添加查询中不存在的列

Posted

技术标签:

【中文标题】添加查询中不存在的列【英文标题】:Adding A Column that doesn't exist in a query 【发布时间】:2011-08-02 02:39:49 【问题描述】:

我想在查询中添加一个表中不存在的列并将其作为结果返回。所以假设 TABLE_TEST 有 A、B 列,我想返回 A、B 和 C 的值。我正在尝试这样做

SELECT A, B, C=3 FROM TABLE_TEST

SELECT *, C=3 FROM TABLE_TEST

这可以在 mysql、Postgresel 或 MSSQL 中完成吗?

【问题讨论】:

以下答案的进一步说明:如果您需要字符串而不是整数,则需要在其周围加上单引号。 (也就是说,虽然select 3 as c from table 有效,但select dummy as c from tableselect "dummy" as c from table 尝试查找已命名为dummy 的列,因此您需要select 'dummy' as c from table。可能因您的SQL 引擎而异。通过***.com/questions/2504163/… 和@987654322 @ 【参考方案1】:

你应该使用:

SELECT A,B, 3 AS C FROM TABLE_TEST

【讨论】:

B 后面少了一个逗号,导致查询无效。【参考方案2】:

你可以用作

Select a,b, 3 as c from table

这被称为alias

【讨论】:

【参考方案3】:

是的,当然:

select a, b, 3 as c from table_test

就是这样。它适用于您提到的三个数据库引擎。

【讨论】:

如果您想在列名中加入空格,也可以将 3 设为“My Fake Column”

以上是关于添加查询中不存在的列的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 迁移显示现有列的列不存在

postgres 错误:Postgresql 11.6 中的列不存在错误

如果列不存在,则无法添加?

SharePoint REST:列不存在错误

如果源文件中不存在,ssis 添加具有默认值的列

如果不存在则添加列