Foxtable(狐表)用户栏目专家坐堂 → sql语句使用求助


  共有6536人关注过本帖树形打印复制链接

主题:sql语句使用求助

帅哥哟,离线,有人找我吗?
zsxx999ja
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:215 积分:2324 威望:0 精华:0 注册:2020/10/3 6:58:00
sql语句使用求助  发帖心情 Post By:2022/10/8 20:57:00 [只看该作者]

下面是我用sql语名查询的三个表且组合起来的句子,测试没有问题

S ELECT  会议时间 as 日期, sy , 参加人 as 人员
FROM   dbo.短信内容 where 会议时间 > '2022/01/01'
union
S ELECT  出差起日期 as 日期, convert(varchar(200),事由) as 事由, 参加人员 as 人员
FROM   dbo.督导组下校登记 where 出差起日期 > '2022/01/01'
union
S ELECT  出差时间 as 日期, CONVERT(VARCHAR(200),内容) as 事由, 参加人 as 人员
FROM     dbo.笔记本与档案 where 出差时间 > '2022/01/01'
order by 日期;

这里where语句滤是分表过滤的,能否在组合后再过滤,我用where和 having都没能成功,如何写?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110572 积分:562750 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/10/8 21:37:00 [只看该作者]

select * from (S ELECT  会议时间 as 日期, sy as  事由, 参加人 as 人员
FROM   dbo.短信内容 
union
S ELECT  出差起日期 as 日期, convert(varchar(200),事由) as 事由, 参加人员 as 人员
FROM   dbo.督导组下校登记 
union
S ELECT  出差时间 as 日期, CONVERT(VARCHAR(200),内容) as 事由, 参加人 as 人员
FROM     dbo.笔记本与档案 ) as a where 日期 > '2022/01/01' order by 日期;

其实先过滤再合并效率更高,虽然代码多了
[此贴子已经被作者于2022/10/8 21:37:44编辑过]

 回到顶部