比如说有一个表addr
里面有两个字段:street(varchar(255)),num(varchar(50))
addr里面的数据:
street num
街道1 1-1
街道2 1-2
街道1 1-2
街道3 1-1
街道2 1-3
街道3 1-2
街道1 1-3
街道3 1-3
街道2 1-1 我要用sql让它重新排序,变成:
street num
街道1 1-1
街道1 1-2
街道1 1-3
街道2 1-1
街道2 1-2
街道2 1-3
街道3 1-1
街道3 1-2
街道3 1-3这只是数据的样子,num可能还会更复杂.有没有怎么实现啊.
里面有两个字段:street(varchar(255)),num(varchar(50))
addr里面的数据:
street num
街道1 1-1
街道2 1-2
街道1 1-2
街道3 1-1
街道2 1-3
街道3 1-2
街道1 1-3
街道3 1-3
街道2 1-1 我要用sql让它重新排序,变成:
street num
街道1 1-1
街道1 1-2
街道1 1-3
街道2 1-1
街道2 1-2
街道2 1-3
街道3 1-1
街道3 1-2
街道3 1-3这只是数据的样子,num可能还会更复杂.有没有怎么实现啊.
select *
from addr
order by street , num;
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 69 to server version: 4.0.17-nt-logType 'help;' or '\h' for help. Type '\c' to clear the buffer.mysql> CREATE TABLE `test`.`addr` (
-> `street` varchar(255) NOT NULL DEFAULT '0',
-> `num` varchar(50) NULL
-> );
Query OK, 0 rows affected (0.09 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道1', `num`='1-1';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道2', `num`='1-2';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道1', `num`='1-2';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道3', `num`='1-1';
Query OK, 1 row affected (0.02 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道2', `num`='1-3';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道3', `num`='1-2';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道1', `num`='1-3';
Query OK, 1 row affected (0.00 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道3', `num`='1-3';
Query OK, 1 row affected (0.02 sec)mysql> INSERT INTO `test`.`addr` SET `street`='街道2', `num`='1-1';
Query OK, 1 row affected (0.00 sec)mysql>
mysql> select * from test.addr order by street;
+--------+------+
| street | num |
+--------+------+
| 街道1 | 1-1 |
| 街道1 | 1-2 |
| 街道1 | 1-3 |
| 街道2 | 1-2 |
| 街道2 | 1-3 |
| 街道2 | 1-1 |
| 街道3 | 1-1 |
| 街道3 | 1-2 |
| 街道3 | 1-3 |
+--------+------+
9 rows in set (0.00 sec)
select * from tbName order by 街道,门牌;