各位大虾,请教一个疑难SQL 语句:应用 top \group\ 及排序问题!!谢谢!!!!!
有个表:TABLE
ID NAME
AA001 YI
AA003 ER
AA002 SAN
AB004 SI
AB003 WU
AB002 LUI
AC001 QI
AD002 BA
求一个语句,实现:
将 ID 前2为相同的 且按后3位排序 且取得 前2条记录,
如 :
2位为AA的有3条记录,则按 001 003 002 排序,取得前2条记录AA001 AA002
想得到的结果是:
AA001 YI
AA002 SAN
AB002 LUI
AB003 WU
AC001 QI
AD002 BA
先谢谢各位大虾了!!!!!!!!!!!!!!!!
------解决方案--------------------select *
from TT as A
where ID IN (select top 2 ID from TT where left(ID,2)=left(A.ID,2) order by right(ID,3))
order by id