繁体   English   中英

选择具有虚拟值的虚拟列并在 SQL 中的虚拟列中搜索?

[英]Select a dummy column with a dummy value and search in dummy column in SQL?

我有两张桌子需要加入

Table1
col1   col2   col3 
------------------
 1      A      20 
 2      B      10
 3      C      30
 4      D      40

Table2
col1   col2
-----------
 1      A  
 2      B  
 3      C  
 4      D  

我必须对两个表进行联合。 由于table2没有 col3 我在查询中添加为虚拟列。

我需要在col3 的两个表中执行搜索操作

我试过了,但它抛出了未知的列异常。

(SELECT col1, col2, col3 from table1 where col3 = "10")
 UNION
(SELECT col1, col2, "10" as col3 from table2 where col3 = "10")

任何帮助,将不胜感激

之后可以直接查询 UNIONed 数据:

SELECT col1, col2, col3 from
(
 (SELECT col1, col2, col3 from table1)
  UNION
 (SELECT col1, col2, "10" as col3 from table2)
) as b 
where col3 = "10"

表 2 中不需要WHERE子句:

SELECT col1, col2, col3 FROM Table1 WHERE col3 = '10'
UNION 
SELECT col1, col2, '10' FROM Table2

请参阅演示
结果:

> col1 | col2 | col3
> ---: | :--- | :---
>    2 | B    | 10  
>    1 | A    | 10  
>    3 | C    | 10  
>    4 | D    | 10 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM