• 技术文章 >后端开发 >php教程

    请问一个关于php+mysql的有关问题

    2016-06-13 12:05:55原创281
    请教一个关于php+mysql的问题
    要在一个表中查询数据,条件是uid in (1,2,3)。那么满足uid=1或者2或者3的都查询到。
    如何做到每满足一个条件只取一条?
    例如uid为1,2,3分别都几条,通过sql查询,只查询uid为1的第一条,uid为2的第一条,uid为3的第一条。
    ------解决方案--------------------
    首先你的数据当中必须有一个id,一个uid

    查询uid为1,2,3分别都几条:(假定表名为'user',表中只有两个字段,分别为id和uid)


    select id,count(uid) from user group by uid having uid=1 or uid=2 or uid =3;


    查询uid为1的第一条:


    select * from user where uid=1 limit 1;

    ------解决方案--------------------
    你可以 对查询出来的结果集 在分组 取一条
    ------解决方案--------------------
    select * from tbl_name a 
    where (select count(*) from tbl_name where uid=a.uid and id
    ------解决方案--------------------
    每个条件只取一条:
    select * from tt where uid in(1,2,3) group by uid ;
    ------解决方案--------------------
    select a.* from table a where 1> (select count(1) from table b where a.id = b.id and a.id > b.id ) and a.uid in (1,2,3)
    ------解决方案--------------------
    select top 1 * from table group by id
    ------解决方案--------------------
    group by 可以实现
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp uid select from where
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 20+值得了解的PHP面试题(附答案分析)• 關於imagick不得不說的一些事_PHP教程• 关于js和php对url编码的处理方法_PHP教程• php生成图片缩略图类程序_PHP教程• PHP $_SERVER变量使用方法详解_PHP教程
    1/1

    PHP中文网