V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
pzzrudlf
V2EX  ›  数据库

求大神解释这句 SQL 的作用

  •  
  •   pzzrudlf · 2015-05-29 11:59:39 +08:00 · 2267 次点击
    这是一个创建于 3500 天前的主题,其中的信息可能已经有所发展或是发生改变。

    select * from users u left join orders o on u.id=o.uid and u.username='范冰冰'

    34 条回复    2015-05-30 00:16:47 +08:00
    RihcardLu
        1
    RihcardLu  
       2015-05-29 12:10:53 +08:00
    又不是什么复杂的东西,看下手册,搜下就能解决的何必要跑来这里“求大神”?被喂饭的感觉很好吗?不劳而获的感觉很好吗?
    b821025551b
        2
    b821025551b  
       2015-05-29 12:11:36 +08:00
    这个是基础吧。。。
    CinderellaCiCi
        3
    CinderellaCiCi  
       2015-05-29 12:14:52 +08:00
    两个表,users 和 orders ,别名分别是u和o ,通过条件u.username='范冰冰' 筛选出u表结果,然后右侧并上相应符合条件u.id=o.uid的o表结果。

    自己试下就知道了呀。
    zzxworld
        4
    zzxworld  
       2015-05-29 12:15:16 +08:00
    嗯,应该是查找范爷在哪几家酒店开过房。
    CinderellaCiCi
        5
    CinderellaCiCi  
       2015-05-29 12:17:36 +08:00
    说错了,u表还是两个条件筛选的,除非o表和u表的id完全一致
    ca1n
        6
    ca1n  
       2015-05-29 12:18:00 +08:00
    你这个...还是多百度 很简单的问题
    CuminLo
        7
    CuminLo  
       2015-05-29 12:32:21 +08:00
    汗,我这个SQL渣渣都能看得懂。
    heaton_nobu
        8
    heaton_nobu  
       2015-05-29 13:24:02 +08:00
    查询所有用户名为“范冰冰”的用户与订单数据,包括没有下订单的用户
    iam36
        9
    iam36  
       2015-05-29 13:31:46 +08:00
    从表u中查询范冰冰的姓名和ID ,关联表o中所有此ID的order记录

    这句话在MSSQL是无法通过语法检查的,因为输出字段有重复,缺少明确指定。其他系统不了解
    herojaxy
        10
    herojaxy  
       2015-05-29 13:38:41 +08:00
    你们啊,都没GET到楼主的点
    popok
        11
    popok  
       2015-05-29 13:42:14 +08:00
    @herojaxy 23333333333333
    Tiande
        12
    Tiande  
       2015-05-29 13:43:53 +08:00
    @herojaxy ( •̀ ω •́ )✧ 所以是不是还可以加点条件
    select * from users u left join orders o on u.id=o.uid and u.username like '范冰冰,李晨'
    Tiande
        13
    Tiande  
       2015-05-29 13:44:25 +08:00
    @herojaxy 啊 应该是
    u.username in '范冰冰,李晨'
    b821025551b
        14
    b821025551b  
       2015-05-29 13:49:52 +08:00
    @dtdnqsb 目测还没改对→_→
    Tiande
        15
    Tiande  
       2015-05-29 14:00:47 +08:00
    @b821025551b _(:3」∠)_ 我 sql 学的不好,你不要骗我。
    RIcter
        16
    RIcter  
       2015-05-29 14:03:56 +08:00   ❤️ 1
    u.username in ('范冰冰','李晨')
    RIcter
        17
    RIcter  
       2015-05-29 14:04:09 +08:00
    @dtdnqsb #16
    wwek
        18
    wwek  
       2015-05-29 14:05:34 +08:00
    这是数据挖掘,深挖八卦`
    CuminLo
        19
    CuminLo  
       2015-05-29 14:05:57 +08:00
    @herojaxy 啊?是什么啊
    Tiande
        20
    Tiande  
       2015-05-29 14:07:33 +08:00
    @RIcter
    ((( ;゚Д゚))) 看来果然离不开 SQL Server Management Studio 啊
    qianfei7f
        21
    qianfei7f  
       2015-05-29 14:12:03 +08:00
    楼主其实想问的是 “范冰冰”干了什么,而不是语句怎么样?
    anyforever
        22
    anyforever  
       2015-05-29 15:03:02 +08:00
    你是想在百度里find范爷干了嘛吗?
    yfl168648
        23
    yfl168648  
       2015-05-29 15:05:39 +08:00
    难道你拿到携程数据库了???
    swjtutipo
        24
    swjtutipo  
       2015-05-29 15:23:09 +08:00
    楼主怎么拿到携程数据库的
    xuyifei
        25
    xuyifei  
       2015-05-29 15:39:12 +08:00
    楼主查到范爷的记录了???
    langhua9527
        26
    langhua9527  
       2015-05-29 15:41:10 +08:00
    范冰冰也用携程吗
    bin456789
        27
    bin456789  
       2015-05-29 15:48:37 +08:00
    难道只有我觉得查询有无?
    应该是select * from users u left join orders o on u.id=o.uid WHERE u.username='范冰冰'
    EchosKK
        28
    EchosKK  
       2015-05-29 16:14:58 +08:00
    @bin456789 AND更好啊,AND是过滤之后再连接
    huobazi
        29
    huobazi  
       2015-05-29 16:26:01 +08:00
    这么写

    select u.username, count(1) as c from users u left join orders o on u.id=o.uid WHERE u.username in '范冰冰, 李晨'
    group by u.username
    order by c desc
    idblife
        30
    idblife  
       2015-05-29 16:29:53 +08:00
    请先复习sql基础。。。
    cysnap
        31
    cysnap  
       2015-05-29 16:40:20 +08:00
    这个得看具体的数据吧,把整个数据库发出来,我帮你解读一下这个是什么意思。

    肯定能比楼上的解读得精彩吧。
    qnsh
        32
    qnsh  
       2015-05-29 17:08:53 +08:00
    @herojaxy 这不是充气娃娃卖家查询已下单款式为“范冰冰”的订单吗?
    bin456789
        33
    bin456789  
       2015-05-29 20:44:47 +08:00
    @EchosKK 这里的 and 是用作连接条件的。
    http://p2.lxd.cc/uploads/2015/05/1(1).jpg
    hack520
        34
    hack520  
       2015-05-30 00:16:47 +08:00 via iPhone
    楼猪的意思是他有裤子
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1883 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:18 · PVG 00:18 · LAX 08:18 · JFK 11:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.