qq_41369735
qq_41369735
采纳率25%
2018-03-21 12:28 阅读 824
已采纳

sql查询。。。。。。。。。。。。。

20

图片说明![图片说明
查询出未住满的room(BED_STATUS 为 N EMPLOYEE_LIVE_ID 不为空)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

6条回答 默认 最新

  • 已采纳
    cxfidc01 红帽01 2018-03-22 00:50

    感觉你的提问有些问题,如何表示没住人?

    BED_STATUS 表示是否住人 住人是Y,没住人是N

    那么sql是这样的

        SELECT  b.*
        FROM    ( SELECT    do_room_id
                  FROM      room_bed
                  WHERE     BED_STATUS = 'N'
                  GROUP BY  do_room_id
                ) a
                LEFT OUTER JOIN do_room b ON a.do_room_id = b.do_room_id
    

    BED_STATUS 表示房屋可用状态 可用是Y,不可用是N
    EMPLOYEE_LIVE_ID 表示入住员工id, 没住人是null
    那么sql是这样的

        SELECT  b.*
        FROM    ( SELECT    do_room_id
                  FROM      room_bed
                  WHERE     BED_STATUS = 'Y'
                            AND EMPLOYEE_LIVE_ID IS NULL
                  GROUP BY  do_room_id
                ) a
                LEFT OUTER JOIN do_room b ON a.do_room_id = b.do_room_id
    
    点赞 2 评论 复制链接分享
  • sddtlm8 sddtlm8 2018-03-21 12:38

    select * from room where BED_STATUS = 'N' and EMPLOYEE_LIVE_ID is not null

    点赞 评论 复制链接分享
  • woaiguigui 神_棍 2018-03-21 12:47

    select * from do_roow a, room_bed b where where a.do_room_id=b.do_room_id and b.BED_STATUS = 'N' and EMPLOYEE_LIVE_ID is not null

    点赞 评论 复制链接分享
  • hauchun 小小程序圆圆 2018-03-21 14:27

    select * from room where BED_STATUS = 'N' and EMPLOYEE_LIVE_ID is not null

    点赞 评论 复制链接分享
  • hauchun 小小程序圆圆 2018-03-21 14:28

    查询出来的这个结果应该是没有数据的

    点赞 评论 复制链接分享
  • ApatheCrazyFan ApacheCrazyFan 2018-03-22 01:34

    SELECT DO_ROOM_ID,
    CASE
    WHEN MIN(BED_STATUS) = 'N' THEN '没注满'
    ELSE '注满'
    END FLAG

    FROM ROOM_BED
    GROUP BY DO_ROOM_ID

    
    
    点赞 评论 复制链接分享

相关推荐