高手帮忙解决一个SQL语句的问题!
我有这么一条SQL语句
select top 9 c.id,c.name,c.type1,c.type2,t.price,t.[percent] from car c,car_city t where c.id=t.p_id and t.city_id=1 and t.visible=1 order by t.adddate desc
得出结果如下
id name type1 type2 price percent
----------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------- -----------------------------------------------------
1021 宾利Azure_Conv 宾利 宾利Azure .0000 0.0
609 F3 旗舰型 GLX-i NAVI 比亚迪汽车 比亚迪F3 10.0000 0.20040080160320201
653 经典777(4YME发动机) 北京福田 经典777风景海狮 55.0000 451.65496489468399
875 赛骏CC6481BY1(四驱)豪华型 长城汽车 赛骏SUV多功能车 10.0000 0.0
893 赛影CC6510SC1基本型 (柴油版) 长城汽车 赛影 22.0000 168.94865525672401
3672 ZS 180 MG ZS 12.0000 0.0
5517 adsf 长城汽车 哈弗 20.0000 0.0
5519 sl 长城汽车 赛铃 20.0000 0.0
5520 asdfa 长城汽车 赛弗 20.0000 0.0
(所影响的行数为 9 行)
但我想要的结果是type1字段,如果里面有相同的话将取一条
[解决办法]
type1字段相同的话取那条啊,这是取ID 最大的那条,你试一下
select top 9 c.id,c.name,c.type1,c.type2,t.price,t.[percent]
from car c,car_city t
where c.id=t.p_id and t.city_id=1 and t.visible=1
and c.id in (
select max(c.id) as ID
from car c,car_city t
where c.id=t.p_id and t.city_id=1 and t.visible=1
group by c.type1)
order by t.adddate desc