婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > SQL查詢字段被包含語句

SQL查詢字段被包含語句

熱門標(biāo)簽:奧威地圖標(biāo)注多個地方 京華物流公司地圖標(biāo)注 百度地圖標(biāo)注不同路線 智能語音外呼系統(tǒng)選哪家 武漢長沙外呼系統(tǒng)方法和技巧 怎樣在地圖上標(biāo)注路線圖標(biāo) 外呼系統(tǒng)電銷專用 千呼電銷機器人價格 優(yōu)質(zhì)地圖標(biāo)注

前言

說到SQL的模糊查詢,最先想到的,應(yīng)該就是like關(guān)鍵字。

當(dāng)我們需要查詢包含某個特定字段的數(shù)據(jù)時,往往會使用 ‘%關(guān)鍵字%' 查詢的方式。例如:

SELECT ... FROM 表名 WHERE 字段名 LIKE '%關(guān)鍵字%'

這應(yīng)該可以算是一種典型的”包含XXX”的方式,但如果我們需要查詢字段被包含于特定字符的數(shù)據(jù)時呢?

比如,我有一張聯(lián)系人數(shù)據(jù)表ConnectName,其中有個字段用于記錄姓名name。我想獲取名為小蘭和灰原的人的聯(lián)系資料。正常情況下,我們首先能想到的做法應(yīng)該是:

SELECT * FROM ConnectName 
WHERE
  name = '小蘭'
  OR name = '灰原'

這樣的做法是可以實現(xiàn)這種目的的。如果這時候,我突然想,再查一個人,比如說“柯南”,那么我們就要修改SQL的結(jié)構(gòu),添加一個Where條件句:

SELECT * FROM ConnectName 
WHERE
  name = '小蘭'
  OR name = '灰原'
  OR name = '柯南'

我們知道,OR條件查詢本身是屬于效率較低的,而且結(jié)構(gòu)變動的語句在MyBatis實現(xiàn)稍微麻煩些(當(dāng)然也是可以實現(xiàn)的,遍歷插入字段就行了)。

能不能簡單一些呢?我可以把所有關(guān)鍵字放在一起,只用一個Where條件去實現(xiàn)嗎?

CHARINDEX登場

這時候,我們就可以用 CHARINDEX 關(guān)鍵字了,CHARINDEX可以返回某個字段在一串文字中出現(xiàn)的位置,跟String的indexOf用法類似,不多廢話,我們來舉個栗子:

CHARINDEX('李白','曹操很帥') =0

在上面的栗子中,因為曹操很帥不包含李白關(guān)鍵字,所以找不到,返回0.

CHARINDEX('李白','李白很帥') =1

同樣的栗子,因為包含里李白關(guān)鍵字,會返回關(guān)鍵字所在的開頭第一個字的索引,所以返回1.

了解了使用方法之后,我們就可以運用CHARINDEX關(guān)鍵字優(yōu)化下我們的SQL語句:

SELECT * FROM ConnectName 
WHERE
  CHARINDEX(name ,'小蘭灰原柯南')>0

如果name字段對應(yīng)的名字在 ‘小蘭灰原柯南' 中出現(xiàn),那么CHARINDEX函數(shù)就會返回大于1,就可以得到我們想要的數(shù)據(jù)啦(他們3個人也可以在一起愉快的玩??-^)

對應(yīng)的mybatis實現(xiàn)也相對簡潔

SELECT * FROM ConnectName 
WHERE
  !--[CDATA[ AND CHARINDEX(name ,#{傳入的參數(shù)}) --> 0 ]]>

如果后期我們想要加入一個新的人,比如毛利小五郎,只需要在傳入的參數(shù)中加入 ‘小蘭灰原柯南毛利小五郎' 就可以了,是不是簡單了許多呢?

以上所述是小編給大家介紹的SQL字段的被包含查詢語句,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!

您可能感興趣的文章:
  • 用SQL語句查詢數(shù)據(jù)庫中某一字段下相同值的記錄方法
  • SQL 查詢和刪除重復(fù)字段數(shù)據(jù)的方法
  • MySQL大表中重復(fù)字段的高效率查詢方法
  • SQL order by ID desc/asc加一個排序的字段解決查詢慢問題
  • php mssql擴(kuò)展SQL查詢中文字段名解決方法
  • SQLSERVER查詢所有數(shù)據(jù)庫名,表名,和字段名的語句

標(biāo)簽:天水 防疫戰(zhàn)設(shè) 七臺河 威海 宿州 益陽 來賓 銅仁

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL查詢字段被包含語句》,本文關(guān)鍵詞  SQL,查詢,字段,被,包含,語句,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL查詢字段被包含語句》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL查詢字段被包含語句的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 林甸县| 辽阳市| 清镇市| 会宁县| 龙口市| 梁河县| 黄梅县| 德昌县| 河曲县| 长顺县| 丹阳市| 邵武市| 彩票| 游戏| 阿合奇县| 锦州市| 新巴尔虎右旗| 三明市| 怀宁县| 辉县市| 尉犁县| 雅安市| 双鸭山市| 分宜县| 镇安县| 谷城县| 金门县| 滨州市| 墨玉县| 马鞍山市| 通许县| 长宁县| 肃宁县| 辽源市| 胶州市| 钟祥市| 周口市| 潞城市| 大英县| 新绛县| 雅安市|