首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MYSQL限制具有where条件的特定列值的出现次数

MYSQL限制具有where条件的特定列值的出现次数
EN

Stack Overflow用户
提问于 2011-07-12 08:23:22
回答 1查看 158关注 0票数 1

从数据库中提取一些优惠券。每张优惠券都有一个包含优惠券所属商家id的merchantid列。

我正在尝试构建一个查询,它拉出5张优惠券,但我只想要每个商家1张优惠券。我不想要同一商家的多张优惠券。

我也有一些WHERE条件需要放在那里。这是我到目前为止所拥有的,它只拉动了每个商家1张优惠券,但它拉动的优惠券并没有最高的点击率:

代码语言:javascript
运行
复制
SELECT C.couponid,C.fmtc_couponid,C.merchantid,
       C.label,C.restrictions,C.coupon,C.link,
       C‌.image,C.expire,C.unknown,C.clicks,M.name,
       M.approved,M.homepageurl,M.logo_image,M‌.permalink
FROM tblCoupons C,tblMerchants M
WHERE C.merchantid=M.merchantid AND
      C.begin < ".mktime()." AND
      C.expire > ".mktime()." AND
      M.display='1'
GROUP BY C.merchantid ORDER BY C.clicks DESC LIMIT 0,5
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-12 09:33:07

我认为您需要的是从优惠券表中预先查询,按商家分组,然后重新加入。

代码语言:javascript
运行
复制
select 
      PreQuery.merchantID,
      C2.couponid,
      C2.fmtc_couponid,
      C2.merchantid,
      C2.label,
      C2.restrictions,
      C2.coupon,
      C2.link,
      C‌2.image,
      C2.expire,
      C2.unknown,
      C2.clicks,
      M.name,
      M.approved,
      M.homepageurl,
      M.logo_image,
      M‌.permalink
   from 
      ( select c.merchantid,
               max( c.clicks ) as HiClickCoupon
           from
              tblCoupons c
              join tblMerchants M1
                 on PreQuery.MerchantID = M1.MerchantID
                 AND M1.DIsplay = '1'
           where
                  c.begin < ".mktime()."
              and c.expire > ".mktime()."
           group by 
              c.merchantid
           order by 
              max( c.Clicks ) DESC
           limit 
              0, 5 ) PreQuery

      join tblMerchants M
         on PreQuery.MerchantID = M.MerchantID

      join tblCoupons C2
         on PreQuery.MerchantID = C2.MerchantID
         AND PreQuery.HiClickCoupon = C2.Clicks
         AND C2.begin < ".mktime()."
         AND C2.expire > ".mktime()."
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6658238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档