【问题标题】:Join query in Mysql of two tables在Mysql中加入两个表的查询
【发布时间】:2013-05-06 22:24:21
【问题描述】:

我有两张桌子:

ad ( id(int) , userid(int) ) : 存储有用户列的广告的表
adcat ( adid(int) , catid(int) ) : 存储每个广告 (adid) 的类别 ID (catid) 的表

现在我只想获取特定用户发布的特定类别的广告数量

示例:所有 catid = 1 且 userid = 725 的广告

谢谢

【问题讨论】:

    标签: mysql database join


    【解决方案1】:
    SELECT * FROM ad 
    LEFT JOIN adcat 
    ON adcat.adid = ad.id
    WHERE adcat.catid = 1 AND ad.userid = 725
    

    【讨论】:

    • 谢谢它可以获取广告,并且当我们添加 COUNT 时使用此查询很容易获取数字
    【解决方案2】:

    尝试使用JOINCOUNT

    SELECT COUNT(*) ads_total
      FROM ad a JOIN
           adcat c ON a.id = c.adid
     WHERE c.catid = 1 AND
           a.userid = 725
    

    SQLFiddle

    【讨论】:

      【解决方案3】:

      你需要加入表格:

      SELECT * FROM ad INNER JOIN adcat ON adid=id WHERE catid=1 and userid=725;
      

      【讨论】:

      • 感谢广告成功,我们可以加 COUNT 来获取号码
      • 当然。只做COUNT(*) 而不是*
      猜你喜欢
      • 2013-05-18
      • 2011-06-09
      • 2013-11-26
      • 2014-02-13
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多