0

我想在 SQL Server 中做这样的事情:

SELECT
    pt.quantity AS 'QTY'
    ,[QTY] * 5
 FROM
 product pt

但在这里我收到错误:
列名“数量”无效。

请提出可能是什么问题或可能的解决方法。

谢谢,
贾斯汀塞缪尔。

4

5 回答 5

3

它此时不知道如何解析名称“QTY”(例如,如果它是子查询)。尝试:

SELECT
    pt.quantity AS 'QTY'
    ,pt.quantity * 5
 FROM
 product pt
于 2012-06-22T11:19:13.677 回答
1

只需这样做:

SELECT
    pt.quantity AS QTY,
    pt.quantity * 5 as QTY_BY_5
FROM product pt
于 2012-06-22T11:19:22.570 回答
1

试试这个:

SELECT
    pt.quantity AS 'QTY'
    ,pt.quantity * 5 AS 'QTY1'
 FROM
 product pt
于 2012-06-22T11:20:07.333 回答
1

您不能使用列的别名进行计算。
因此,只需将'QTy'替换为pt.quantity,它就会起作用。

SELECT
    pt.quantity AS 'QTY'
    ,pt.quantity * 5
 FROM
 product pt

它会为你工作。

于 2012-06-22T11:21:41.810 回答
1

我认为这也可以

SELECT
    quantity AS 'QTY'
    ,quantity  * 5
 FROM
 product

你也可以试试这个

SELECT QTY,QTY * 5 FROM 
(
 SELECT
        quantity AS 'QTY'   
     FROM
     product) Productstable
于 2012-06-22T11:25:52.573 回答