我想基于某些查询返回额外的动态列。假设我有一个名为Table_A的表,其中包含列A,B,C
如果我想返回额外的列,我将按以下方式执行
SELECT A,B,C,D=1
FROM Table_A
D是具有1个值的额外列。有没有办法把查询放在D上:
选择SELECT A,B,C,D =(//我想放置将返回1或0的查询) FROM Table_A
我可以这样做吗?
答案 0 :(得分:1)
是的,这样
SELECT A,
B,
C,
(SELECT somecol
FROM sometable
ORDER BY somecol
limit 1) AS D
FROM Table_A
LIMIT:为了避免sub-query
返回多行(如果有的话)
答案 1 :(得分:0)
您可以使用子查询。
SELECT A,B,C, (
SELECT Some_Column FROM Some_Table) AS D
FROM Table_A
您还可以在子查询的where子句中使用Table_A中的列。 请注意,子查询可能导致性能不佳,因为它们会针对每个结果行进行处理。