【问题标题】:Show count of multiple tables in one query在一个查询中显示多个表的计数
【发布时间】:2014-12-10 14:35:47
【问题描述】:

我有一个问题,我想在一个查询中获取不同表的计数以显示在页面上...

这是我写的查询,但它没有提供正确的结果..

SELECT COUNT(U.uID) AS total, COUNT(P.cID) AS Catmame FROM `dev_web_user` AS U, `dev_web_categories` AS P

请注意所有计数都是独立的,现在加入等...

请帮我解决这个问题...

感谢和最好的问候,

【问题讨论】:

    标签: php join count


    【解决方案1】:

    您可以通过将它们连接为两个不同的临时表来做到这一点。

    试试这个方法:

    SELECT  * FROM
    (SELECT COUNT(*) AS total FROM `dev_web_user`) T1 JOIN
    (SELECT COUNT(*) AS Catmame FROM `dev_web_categories`) T2 ON 1=1
    

    样本输出:

    TOTAL   CATMAME
    4       8
    

    SQL Fiddle 中查看工作演示。

    【讨论】:

      【解决方案2】:

      那就试试吧:

      SELECT 
        (SELECT COUNT(U.uID) FROM `dev_web_user` AS U) as total,
        (SELECT COUNT(P.cID) FROM `dev_web_categories` AS P) as Catmame;
      

      【讨论】:

      • 从返回的数组中读取必须反转(至少在 Oracle 上)
      • 但我需要将所有计数作为单独的列作为信号列.. 有可能吗?
      • 我已经编辑了我的答案并通过检查..这可能是重复的:stackoverflow.com/questions/3761240/…
      • 选择没有 FROM ??哪个数据库接受这个查询?
      • @HalayemAnis As SELECT Syntax 显示 FROM 子句是可选的
      猜你喜欢
      • 1970-01-01
      • 2021-08-20
      • 1970-01-01
      • 1970-01-01
      • 2014-09-14
      相关资源
      最近更新 更多