明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL 圖文詳細(xì)教程之校對(duì)集問(wèn)題

[摘要]本篇文章主要給大家介紹mysql中的校對(duì)集問(wèn)題,希望對(duì)需要的朋友有所幫助!推薦參考教程:《mysql教程》校對(duì)集問(wèn)題校對(duì)集,其實(shí)就是數(shù)據(jù)的比較方式。校對(duì)集,共有三種,分別為:_bin:binary,...

本篇文章主要給大家介紹mysql中的校對(duì)集問(wèn)題,希望對(duì)需要的朋友有所幫助!

推薦參考教程:《mysql教程

校對(duì)集問(wèn)題

校對(duì)集,其實(shí)就是數(shù)據(jù)的比較方式。

校對(duì)集,共有三種,分別為:

  • _bin:binary,二進(jìn)制比較,區(qū)分大小寫(xiě);

  • _cs:case sensitive,大小寫(xiě)敏感,區(qū)分大小寫(xiě);

  • _ci:case insensitive,大小寫(xiě)不敏感,不區(qū)分大小寫(xiě)。

查看(全部)校對(duì)集 –> 基本語(yǔ)法:show collation;

10

如上圖所示,MySQL 數(shù)據(jù)庫(kù)支持百多種校對(duì)集。

接下來(lái),咱們?cè)谝黄鹂纯葱?duì)集的應(yīng)用,因?yàn)橹挥挟?dāng)數(shù)據(jù)進(jìn)行比較的時(shí)候,校對(duì)集才會(huì)生效。在這里,咱們用utf8_bin_ci兩種校對(duì)集進(jìn)行比較:

-- 創(chuàng)建兩張使用不同校對(duì)集的表create table my_collate_bin(
    name char(10)
)charset utf8 collate utf8_bin;create table my_collate_ci(
    name char(10)
)charset utf8 collate utf8_general_ci;

11

如上圖所示,咱們創(chuàng)建了兩張表,分別為my_collate_binmy_collate_ci,其校對(duì)集分別為_bin_ci. 然后,分別向這兩張表中添加數(shù)據(jù):

-- 向表中添加數(shù)據(jù)insert into my_collate_bin values ('a'),('A'),('B'),('b');insert into my_collate_ci values ('a'),('A'),('B'),('b');

再分別查看兩張表中的數(shù)據(jù):

-- 查看表中的數(shù)據(jù)select * from my_collate_bin;select * from my_collate_ci;

13

下面,咱們根據(jù)表中的某個(gè)字段(在這里my_collate_binmy_collate_ci都僅有一個(gè)字段)進(jìn)行排序,其基本語(yǔ)法為:

order by + 字段名 + [asc/desc];

其中,asc表示升序,desc表示降序,默認(rèn)為升序。執(zhí)行如下 SQL 語(yǔ)句:

-- 排序比較select * from my_collate_bin order by name;select * from my_collate_ci order by name;

14

如上圖所示,顯然校對(duì)集生效啦!

此外,咱們需要特別注意的是: 校對(duì)集必須在沒(méi)有數(shù)據(jù)之前聲明好,如果有了數(shù)據(jù)之后,再進(jìn)行校對(duì)集的修改,則修改無(wú)效。

溫馨提示:用符號(hào)[]括起來(lái)的內(nèi)容,表示可選項(xiàng);符號(hào)+,則表示連接的意思

以上就是MySQL 教程之校對(duì)集問(wèn)題的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門(mén)到精通的SQL知識(shí)。