今天又測試了一下,使用utf8字符集創(chuàng)建的表或者字段使用的是utf8字符集,中文的排序是不正確的,如果表和字段是gbk字符集,則可以正確的排序。
創(chuàng)新互聯(lián)建站作為成都網(wǎng)站建設(shè)公司,專注網(wǎng)站建設(shè)公司、網(wǎng)站設(shè)計(jì),有關(guān)成都定制網(wǎng)頁設(shè)計(jì)方案、改版、費(fèi)用等問題,行業(yè)涉及塔吊租賃等多個(gè)領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶的尊重與認(rèn)可。
mysql
create
table
tt_character
(name
varchar(20))
default
charset
gbk;
Query
OK,
rows
affected
(0.03
sec)
mysql
create
table
tt_character1
(name
varchar(20))
default
charset
utf8;
Query
OK,
rows
affected
(0.04
sec)
mysql
insert
into
tt_character
values('蘭州'),('安徽'),('江西');
Query
OK,
3
rows
affected
(0.00
sec)
Records:
3 Duplicates:
0 Warnings:
mysql
insert
into
tt_character1
values('蘭州'),('安徽'),('江西');
Query
OK,
3
rows
affected
(0.00
sec)
Records:
3 Duplicates:
0 Warnings:
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
(表明)
order
by
is_pro
desc,posdate
desc;
這樣排有個(gè)不好的就是他會(huì)把推薦的也按倒敘排列,不過到是能實(shí)現(xiàn)先1,后0
在select語句的order by子句中寫出排序所依據(jù)的字段即可,每個(gè)字段后面可以指定升序(asc)或者降序(desc)
你好,按照你說的 不太可能實(shí)現(xiàn) ,因?yàn)橐恍袛?shù)據(jù) 就是一行數(shù)據(jù) ,你如果按照第一個(gè)字段 排序 第一行也許 是 id 是1的 但按照第二個(gè)字段排序 也許是id是2的
有矛盾的
所以一般情況無法實(shí)現(xiàn)