java吧 关注:1,232,131贴子:12,696,269
  • 29回复贴,共1

求一个SQL语句

只看楼主收藏回复

我现在有一张表order_good 如图

我怎么才能查询出 只有一种good的order


IP属地:四川1楼2013-01-18 10:30回复
    @windsun_ul 大司马 你怎么看


    IP属地:四川2楼2013-01-18 10:31
    收起回复
      select * from order_good where good = 1 ?
      是这样么,我是菜鸟。不对大神指点下


      IP属地:北京来自Android客户端4楼2013-01-18 10:46
      收起回复
        是good_id ,sorry


        IP属地:北京来自Android客户端5楼2013-01-18 10:47
        回复
          DISTINCT 或者是group by。


          6楼2013-01-18 11:27
          收起回复
            如果你用的是Oracle可以用
            select order_id
            from (select order_id,good_id, count(*) over(partition by order_id) rn from order_good)
            where good_id=1 and rn=1;


            7楼2013-01-18 13:43
            回复
              SQL> select order_id
              2 from (select order_id,good_id, count(*) over(partition by order_id) rn from order_good)
              3 where good_id=1 and rn=1;
              ORDER_ID
              ---------------------------------------
              1
              6
              7
              SQL>


              8楼2013-01-18 13:45
              收起回复
                select count(good_id) as n,order_id from order_good group by order_id having n=1
                这个你试一试


                IP属地:北京9楼2013-01-18 18:00
                回复
                  我晕 不明白楼主要的查询结果是什么额 你要求的是同一个goog_id 的order_id的数量还是同一个good_id的order_id的**


                  IP属地:安徽10楼2013-01-18 18:17
                  回复
                    这种问题就应该用group by having的结构。


                    青铜星玩家
                    百度移动游戏玩家均可认证(限百度账号),去领取
                    活动截止:2100-01-01
                    去徽章馆》
                    IP属地:湖北11楼2013-01-19 11:18
                    回复