在MySQL查询中使用'as'

时间:2013-06-28 15:48:08

标签: mysql

我有一个生成csv文件的模块,用于向第三方提供数据,但想要修改它以用于其他公司。他们想要用于csv的列名称与当前模块中设置的列名称不同,例如Product Name而不是product__name。

原始mod中sql的一个例子是:

$query = 'select
    p.products_id as uuid,
    t.type_name as product__type,
    d.products_name as product__name,
    d.products_description as product__description,
    d.products_url as product__url,
    d.products_viewed as product__viewed_count,
    p.products_quantity as product__quantity,
    p.products_model as product__model,
    p.products_image as product__image
    .....

我尝试将d.products_name更改为product__name,将d.products_name更改为Product Name,但它给了我一个sql错误。

是否有任何简单的解决方案,而无需重写整个模块?

3 个答案:

答案 0 :(得分:3)

因为您使用空格作为标识符,所以应引用它们,如下所示:

  d.products_name as `Product Name`

请参阅http://dev.mysql.com/doc/refman/4.1/en/identifiers.html

答案 1 :(得分:1)

您可以使用反引号括起别名。

d.products_name as `Product Name`

这对于输出mysql关键字的列名或带空格的列名非常有用。

答案 2 :(得分:0)

试试这个:

d.products_name as 'Product Name',

如果需要带间距的别名,则必须将其视为字符串。

d.products_name as 'Product Name',