Jalen_W 2019-04-11 23:22 采纳率: 100%
浏览 1750
已采纳

如何用一条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条)

报告相同问题?