读书人

怎么在sql中查询某个字段不同值分别取

发布时间: 2012-09-08 10:48:07 作者: rapoo

如何在sql中查询某个字段不同值分别取一定数量.
SELECT * FROM `表名` WHERE 类型="甲" ORDER BY rand() limit 0,3;
SELECT * FROM `表名` WHERE 类型="乙" ORDER BY rand() limit 0,1;
我想要的就是 取4条记录出来,其中 类型=甲有3条 类型=乙有1条
如何用一条sql语句执行.
望高手给出结果,

[解决办法]

SQL code
select top 3 * from tracy where AZWZ='1330采面'union allselect top 1* from tracy where AZWZ='223水仓'/*AZWZ    PJZ    ZDZ    BCSJ1330采面    0.33    0.34    2010-01-01 00:00:00.0001330采面    0.33    0.34    2010-01-01 00:05:00.0001330采面    0.33    0.34    2010-01-01 00:00:00.000223水仓    0.33    0.34    2010-01-01 00:00:00.000*/感觉不用union all一条语句实现有难度
[解决办法]
探讨

查询不出来阿..报错 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '3 * FROM `musicData` WHERE musicType=&quo……

[解决办法]
SQL code
(SELECT * FROM `表名` WHERE 类型="甲" ORDER BY rand() limit 0,3)union all(SELECT * FROM `表名`  WHERE 类型="乙" ORDER BY rand() limit 0,1); 

读书人网 >Mysql

热点推荐