COLLATE oracle,Sql 中Collate用法
今天查詢sqlite的時候需要不區分大小寫,查了下文檔,需要使用collate nocase.順便學習下collate的用法。
collate在sql中是用來定義排序規則的。排序規則其實就是當比較兩個字符串時,根據某種規則來確定哪個比較大,是否相等。各個數據庫支持不同的排序規則。
sqlite有三種build in的排序規則:
BINARY
二進制比較,直接使用memcmp()比較
NOCASE
將26個大寫字母轉換為小寫字母后進行與BINARY一樣的比較
RTRIM
和BINARY一樣,忽略結尾的空格
Sql server則比較復雜: 根據MSDN官方解釋 排序規則指定了表示每個字符的位模式。它還指定了用于排序和比較字符的規則。
排序規則具有下面的特征: 區分語言,區分大小寫,區分重音,區分假名
看一下SqlServer中的截圖:
collate的名字包括兩部分,前部分是表示字符集,后部分定義如下:
_BIN
指定使用向后兼容的二進制排序順序。
_BIN2
指定使用 SQL Server 2005 中引入的碼位比較語義的二進制排序順序。
_Stroke
按筆劃排序
_CI(CS)
是否區分大小寫,CI不區分,CS區分
_AI(AS)
是否區分重音,AI不區分,AS區分
_KI(KS)
是否區分假名類型,KI不區分,KS區分
_WI(WS)
是否區分全半角,WI不區分,WS區分
還可以根據拼音,筆畫來排序。
如何設置排序規則
可以在數據庫(create database/alter database時指定),字段級別(create table/alter table時指定)使用Collate命令設置collate,字段級別優先級更高。
SQL 中ROLLUP 用法
SQL 中ROLLUP 用法 ROLLUP 運算符生成的結果集類似于 CUBE 運算符生成的結果集. 下面是 CUBE 和 ROLLUP 之間的具體區別: CUBE 生成的結果集顯示了所選列中值的所有 ...
sql 中 exists用法
SQL中EXISTS的用法 ? 比如在Northwind數據庫中有一個查詢為SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(S ...
數據庫sql中distinct用法注意事項
在寫sql中去重復等操作,需要用到distinct. 在使用distinct的時候要注意,尤其是在有行列轉換的時候.要把sql運行出來看看是不是與你想要的結果一樣. 通過自己試驗,distinct有從 ...
Sql中CHARINDEX用法
CHARINDEX作用 寫SQL語句我們經常需要判斷一個字符串中是否包含另一個字符串,但是SQL SERVER中并沒有像C#提供了Contains函數,不過SQL SERVER中提供了一個叫CHAEI ...
詳細的SQL中datediff用法
DATEDIFF 函數 [日期和時間] 功能返回兩個日期之間的間隔. 語法DATEDIFF ( date-part, date-expression-1, date-expression-2 ) da ...
SQL中ISNULL用法示例
ISNULLSQL查詢示例SELECT ISNULL ? ?使用指定的替換值替換 NULL. 語法 ? ? ? :ISNULL ( check_expression , replacement_val ...
sql中table用法
for c in (select column_value from table(f_split(V_FileID, ','))) loop --若沒有填寫資格開始結束時間,則填入 select co ...
SQL 中 HAVING 用法
現在 Student表有 如下數據 現需求如下: 查找每個老師的學生的平均年齡且平均年齒大于12 不使用 HAVING SELECT * FROM (SELECT TeacherID, AVG(Age ...
SQL中的between and
"between xx and ?xx "在SQL中的用法 這個大家都很熟悉,但是當問到是否包含兩端的值時,就有點兒不確定了.在W3School網站上,有這樣的一段話: 參考:ht ...
隨機推薦
從頭開始 啟動開源電商項目jShop
1. 引言 干了三年C#, 有了轉Java 的念想,所以嘗試學習一下java web,java語法本身和C#沒有太多的差別,所以打算看看開源的java項目,開源的Java項目還是非常非常多的,曾經看了 ...
[Cordova] 無法顯示Alert視窗
[Cordova] 無法顯示Alert視窗 問題情景 今天開了一個Cordova專案做范例,將預設的index.html頁面修改為下列內容.按下執行卻發現,這樣一個簡單的范例無法正常執行.點擊頁面上的 ...
Stat
Description 請你編程實現一個簡單(渣渣)的文本編輯器,具體要求是:給定一個單詞,請你輸出它在給定的文章中出現的次數和第一次出現的位置.注意:匹配單詞時,不區分大小寫,但要求完全匹配,即給定 ...
elasticsearch-5.0.0初見
基礎概念 Elasticsearch有幾個核心概念.從一開始理解這些概念會對整個學習過程有莫大的幫助. 接近實時(NRT) Elasticsearch是一個接近實時的搜索平臺.這意味著,從索引一個文檔 ...
Python元祖
本篇主要介紹另一種有序列表叫元祖:tuple.更多內容請參考:python學習指南 元祖是什么 tuple和list非常類似,但是tuple一旦初始化就不能修改,比如同樣是列出同學的名字 >&g ...
Mat, IplImage, CvMat, Cvarr關系及元素獲取
總結
以上是生活随笔為你收集整理的COLLATE oracle,Sql 中Collate用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么现在微信收钱要绑定银行卡?
- 下一篇: 早盘低开对当天走势的影响?