Jalen_W
2019-04-11 23:22
采纳率: 100%
浏览 1.7k

如何用一条sql语句查询多个相同结构的表内 筛选出的结果的条目数?

目的是要分别列出9个表内满足条件sortingPort = 1的条目数

SELECT count(*) FROM cg_01 WHERE sortingPort = 1 union all
SELECT count(*) FROM cg_02 WHERE sortingPort = 1 union all
.
.
.
SELECT count(*) FROM cg_09 WHERE sortingPort = 1

如果使用union all要将9条语句合并,当我要查询条件为sortingPort = 2的结果,就要修改9次。有没有办法修改FROM后面的内容只用一条语句来查询,或者有其他办法?

SELECT count(*) 
FROM ?????? 
WHERE sortingPort = 1 
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 庄粟 2019-04-12 11:40
    已采纳

    也可以这样:
    如果是代码里的sql就用for循环生成指定sql
    如果是连接工具可以设置会话变量,如 set var = 2 ,sql 里直接用变量代替常量

    评论
    解决 无用
    打赏 举报
  • 查看更多回答(3条)

相关推荐 更多相似问题