sql
基礎:《sql hacks
》第3章——文字處理,總共列舉了4
個tips
,不用like
個tips
的評析。 1
、不用like
情景描述:字串模糊查詢通常都會使用like。
解決方案:使用資料庫支援的全文檢索功能。
評析:一般應用我們使用like
進行字串模糊匹配完全可以滿足功能、效能需求,但是需要注意like
使用方式(萬用字元在前的like
條件是不會使用索引的);對於特殊的應用,如知識庫等則應使用資料庫全文檢索功能,如postgresql
的tsvector
型別。
2、跨列搜尋字串
情景描述:求解給定字串s
是否與資料庫現有的某幾列(c1,c2,..cn
)匹配老;
解決方案:可以使用or
進行連線,判斷s
是否與給出的每列匹配;也可以使用將c1,c2,cn
連線起來判斷是否包含s
;也可以使用in
查詢;
評析:跨列搜尋字串除了or
連線還有其它很多種實現方式。 3
、求解重組字
情景描述:假設現有一張字典表,裡面儲存了所有單詞,如tea
,eat
,我們發現tea
和eat
都是有e, a, t
組合合成,則表示eat
和tea
是重組字。現在要求解字典表中eat
的重組字有幾個?
解決方案:通過數學手段(雜湊函式、二次雜湊方函式等)使得輸入tea
、eat
可以得到同乙個值value
,則只要字典表自連以value
作為where
條件即可。
評析:數學好真的很關鍵,只有很強的數學功底才能確保tea
、eat
的函式值value
是一致,其它的單詞如sea
則是其它的函式值。 4
、排序電子郵件
情景描述:對電子郵件賬戶作公升序排序;
解決方案:通過字串函式擷取@
之前的字串,並對擷取後的字串進行公升序排序即可。
評析:熟練掌握資料庫的字串函式可以大大提高工作效率,如常用的字串連線、取長度,擷取字串,字串查詢,字串替換等。
本章總評:
本章的幾個tip
是無非是告訴我們熟練使用資料庫的字串函式會有意外的收穫,因此我們至少要熟知一種資料庫的字串操作。
Sql Hacks 閱讀感悟 文字處理
sql 基礎 sql hacks 第3 章 文字處理,總共列舉了4個 tips 不用like4個 tips 的評析。1 不用 like 情景描述 字串模糊查詢通常都會使用 like 解決方案 使用資料庫支援的全文檢索功能。評析 一般應用我們使用 like 進行字串模糊匹配完全可以滿足功能 效能需求,...
Sql Hacks 閱讀感悟 日期處理
sql 基礎 sql hacks 第4 章 日期處理,總共列舉了5個 tips 將字串轉換為日期 發現資料中的趨勢 基於任何日期條件的報告等,下述為我對這5個 tips 的評析。1 將字串轉換為日期 2 發現資料中的趨勢 3 基於任何條件的報告 4 生成季度報告 5 月份的第二個星期二 本次評析,我...
Sql Hacks 閱讀感悟 聯機應用
sql 基礎 sql hacks 第6 章 聯機應用,總共列舉了8個 tips 將web 頁面複製到表中 使用 svg影象化地展示資料和將導航特性新增到 web應用上等,下述為我對這8個 tips 的評析。41 將web 頁面複製到表中 場景描述及解決方案 作者利用 xslt 技術將特定格式的 we...