首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

一个单表数据排序的sql语句写法

2012-03-23 
求助一个单表数据排序的sql语句写法表结构如下idnidname10aaa20bbb31ccc42ddd51eee61fff数据有2类,一类是n

求助一个单表数据排序的sql语句写法
表结构如下
id nid name
1 0 aaa
2 0 bbb
3 1 ccc
4 2 ddd
5 1 eee
6 1 fff

数据有2类,一类是nid为0的大类,一类nid存放某个大类的id的小类
现在我想按这样顺序查找:小类数据紧接着在大类后面,例如上面查找结果显示为
1 0 aaa
3 1 ccc
5 1 eee
6 1 fff
2 0 bbb
3 2 ddd

这个sql应该怎样写啊?

[解决办法]

SQL code
select a.*from 表结构如下 a left  join 表结构如下 b on  a.nid=b.idorder by IFNULL(b.id,a.id) , a.id
[解决办法]


SELECT * FROM TTY A where nid=0
union all
select nid,id,name from tty where nid>0
order by id,nid

热点排行