在sql server中模糊查詢通常是這樣的select * from articletable where authorname like '%jacky%'
但是在access中用這條語句執行的時候竟然發現查不出結果,怎麼可能呢?
後來查了下資料,發現問題如下:
要進行模糊查詢,則必須使用萬用字元,access庫的萬用字元和sql server的萬用字元不一樣。
access庫的萬用字元為:
* 與任何個數的字元匹配。
? 與任何單個字母的字元匹配
在sql server中的萬用字元為:
% 與任何個數的字元匹配
- 與單個字元匹配
但是又發現,c#連線到access資料庫之後,用這樣一條語句select * from articletable where authorname like '*jacky*' (注意,這邊按照上述萬用字元的要求將%修改為*了)竟然搜尋不到應該存在的n條記錄,我靠!怎麼可能呢?明明直接在access中執行的時候是有結果的呀!!!
c#中採用的ado連線access,所以它的sql語法是ado語法,與access的語法有點不同。
access中的模糊查詢是*匹配任意字元,但如果通過c#來進行access模糊查詢的話,是用%表示匹配任意字元。
所以,你的查詢語句應該是
select * from articletable where authorname like '%jacky%'
es模糊查詢的問題
今天在遇到es查詢的時候,遇到了難點,花了半天才發現問題原因。需求是 es實現模糊查詢。相當於sql中的like 像 一樣。但是在開發過程中,我使用了各種分詞,各種查詢 總是實現不了。問題 比如 我查詢切片麵包可以查詢出來,但是我查詢切麵包就查詢不出來。原因是es預設採用了分詞機制,導致我查詢的時候...
模糊查詢「 」轉換問題
在做乙個系統,功能是充值查詢,在此用的是模糊查詢 比如我要查詢乙個叫小明的同學,我只輸入 小 表內就出現所有姓名中有關小的同學 在做的過程中遇到乙個問題,都知道模糊查詢少不了 的應用。在此我還寫過關於d層訪問資料庫的初始寫法,方法沒有錯,放到sql sever裡是可以找到的,但是寫在vs裡需要強轉,...
oracle關於模糊查詢的問題
以前模糊查詢使用的是 like 例如 schema kmh qc select v.unitprice,v.unit,v.storage,v.stationeryname,v.stationeryid,v.modelsize,v.classname,v.classid from v wjqc sto...