mysql数据库怎么可以两个条件排序?
select*frommysqlorderbytimedescselect*frommysqlorderbyiddesc我希望让time居先ID居后排列这样可以吗sele...
select * from mysql order by time descselect * from mysql order by id desc我希望让time居先ID居后排列这样可以吗 select * from mysql order by time,id desc各位帮我解决下啊 谢谢了!
展开
展开全部
在数据库查询时,常常需要排序,而有时排序条件可能有多个。
如数据库:
a b
1 103
1 101
2 201
2 203
1 102
2 202
排序后: a b
1 103
1 102
1 101
2 203
2 202
2 201
语句:
SELECT A.a , A.b FROM TABLE A ORDER BY A.a ASC , A.b DESC
其中ASC连接多条排序,且与后一条查询之间有逗号隔开!
如数据库:
a b
1 103
1 101
2 201
2 203
1 102
2 202
排序后: a b
1 103
1 102
1 101
2 203
2 202
2 201
语句:
SELECT A.a , A.b FROM TABLE A ORDER BY A.a ASC , A.b DESC
其中ASC连接多条排序,且与后一条查询之间有逗号隔开!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-02
展开全部
今天又测试了一下,使用utf8字符集创建的表或者字段使用的是utf8字符集,中文的排序是不正确的,如果表和字段是gbk字符集,则可以正确的排序。
mysql> create table tt_character (name varchar(20)) default charset gbk;
Query OK, 0 rows affected (0.03 sec)
mysql> create table tt_character1 (name varchar(20)) default charset utf8;
Query OK, 0 rows affected (0.04 sec)
mysql> insert into tt_character values('兰州'),('安徽'),('江西');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> insert into tt_character1 values('兰州'),('安徽'),('江西');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> select * from tt_character1 order by name;
+------+
| name |
+------+
| 兰州 |
| 安徽 |
| 江西 |
+------+
3 rows in set (0.00 sec)
mysql> select * from tt_character order by name;
+------+
| name |
+------+
| 安徽 |
| 江西 |
| 兰州 |
+------+
3 rows in set (0.00 sec)
mysql> create table tt_character (name varchar(20)) default charset gbk;
Query OK, 0 rows affected (0.03 sec)
mysql> create table tt_character1 (name varchar(20)) default charset utf8;
Query OK, 0 rows affected (0.04 sec)
mysql> insert into tt_character values('兰州'),('安徽'),('江西');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> insert into tt_character1 values('兰州'),('安徽'),('江西');
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> select * from tt_character1 order by name;
+------+
| name |
+------+
| 兰州 |
| 安徽 |
| 江西 |
+------+
3 rows in set (0.00 sec)
mysql> select * from tt_character order by name;
+------+
| name |
+------+
| 安徽 |
| 江西 |
| 兰州 |
+------+
3 rows in set (0.00 sec)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from mysql order by 字段一 asc ,字段二 asc,字段三 desc;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-02
展开全部
select * from mysql order by time desc,id desc
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询