sql - 尝试在 SQL 中合并两个表(相同的列、数据类型和 where 子句)
问题描述
嗨,我一直在尝试使用简单的联合或使用 CAT 然后联合来组合这两个查询,但它不起作用:
我的查询如下:{
;WITH tb1 as
(
select
Venue
,convert(date,event, 103) as EventDate
,RoomName
,SPECIALTY
CONSULTANT_NAME
from test.dbo.test_tbl1
WHERE convert(date,event, 103) >= '2019-01-01' and convert(date,event, 103) <= '2019-12-01')
select * from tb1
where
SPECIALTY like 'Business%'
or (CONSULTANT_NAME like '%john, Jx%')
or (CONSULTANT_NAME like '%Sam, Sx%')
;WITH tb2 as
(
select
Venue
,convert(date,event, 103) as EventDate
,RoomName
,SPECIALTY
CONSULTANT_NAME
from test.dbo.test_tbl2
WHERE convert(date,event, 103) >= '2019-01-01' and convert(date,event, 103) <= '2019-12-01')
select * from tb2
where
SPECIALTY like 'Business%'
or (CONSULTANT_NAME like '%john, Jx%')
or (CONSULTANT_NAME like '%Sam, Sx%')
}
at the end of first query if I try to put tab2 as:
,tb2 as
( select ....)
它的显示错误
任何指示正确方向的帮助表示赞赏。
解决方案
你为什么不使用这样的东西:
SELECT
Venue
,CONVERT(date,event, 103) AS EventDate
,RoomName
,SPECIALTY
,CONSULTANT_NAME
FROM test.dbo.test_tbl1
WHERE CONVERT(date,event, 103) >= '2019-01-01' AND CONVERT(date,event, 103) <= '2019-12-01') AND (SPECIALTY LIKE 'Business%' OR CONSULTANT_NAME LIKE '%john, Jx%' OR CONSULTANT_NAME LIKE '%Sam, Sx%')
UNION
SELECT
Venue
,CONVERT(date,event, 103) AS EventDate
,RoomName
,SPECIALTY
,CONSULTANT_NAME
FROM test.dbo.test_tbl2
WHERE CONVERT(date,event, 103) >= '2019-01-01' AND CONVERT(date,event, 103) <= '2019-12-01') AND (SPECIALTY LIKE 'Business%' OR CONSULTANT_NAME LIKE '%john, Jx%' OR CONSULTANT_NAME LIKE '%Sam, Sx%')
推荐阅读
- azure - Azure ARM 模板特殊字符
- android - 如何为 ACTION_GET_CONTENT 返回多个文件?
- python - Python Avro avro.io.AvroTypeException 数据不是模式的示例
- python - 数据基数不明确 Tensorflow
- visual-studio - Visual Studio 上的缩放工具窗口
- sql - SAS EG 中的 WHERE 语句用于获取数据集的前一个月?
- python-3.x - 带有 websocket 和 SocketIO 的 Sanic。使用哪一个?
- wolfram-mathematica - 你如何在mathematica中覆盖圆柱体末端附近的圆环?
- linux - Anylogic 文本字段默认“折叠”
- r - 删除重复项和它的内在价值