sqlonlike
① sql 的like語句
like後面的匹配字元不加通配符 % 的話就跟 = 是一樣的。
② SQL交叉表On條件是否可以用like連接
select
a.ID,a.DEP,
sum(casewhenb.WENJIAN_LEIXING='文件'then1else0end)文件,
sum(casewhenb.WENJIAN_LEIXING='通知'then1else0end)通知
fromDEPaleftjoinWENJIANbona.id=b.DEP_ID
groupbya.ID,a.DEP
;
③ SQL 語句 inner join的用法,想用like,不用「=」。我想模糊查詢,請高手指點。
輸入SELECT * FROM dbo.employers a INNER JOIN dbo.JobseekeSortingCompany b ON a.company_name LIKE '%'+b.companykw+'%'即可。
④ mysql 左連接 on 後面條件用like
當我創建一個新項目時(我用的是RadRails IDE),選中連接mysql並出現歡迎(not necessary on OS X Leopard) development: adapter: sqlite3 database:
⑤ SQL中like的用法
LIKE是另一個在WHERE子句中會用到的指令。基本上,LIKE能讓我們依據一個套(pattern) 來找出我們要的資料。相對來說,在運用IN的時候,我們完全地知道我們需要的條件;在運用BETWEEN的時候,我們則是列出一個范圍。LIKE的語法如下:
⑥ SQL語句like怎麼使用多個like條件...
方法和詳細的操作步驟如下:
1、第一步,新建測試表,見下圖,轉到下面的步驟。
⑦ sql查詢 =和like的區別
很奇怪的現象。
07年的時候,資料庫是9.2.0.8,我們資料庫出過1次不可思議的問題,要like才能出來,=出不來的怪現象。找了metalink,也覺得是不可能的事情,不了了之。不過,資料庫重啟後,沒有了此現象。
⑧ sql語句中的like可以用什麼代替
可以使用CHARINDEX 和 PATINDEX兩種函數,但是速度不一定快,這要分情況的。
以下引用自SQL使用幫助:
CHARINDEX
返回字元串中指定表達式的起始位置。
語法
CHARINDEX ( expression1 , expression2 [ , start_location ] )
參數
expression1
一個表達式,其中包含要尋找的字元的次序。expression1 是一個短字元數據類型分類的表達式。
expression2
一個表達式,通常是一個用於搜索指定序列的列。expression2 屬於字元串數據類型分類。
start_location
在 expression2 中搜索 expression1 時的起始字元位置。如果沒有給定 start_location,而是一個負數或零,則將從 expression2 的起始位置開始搜索。
PATINDEX
返回指定表達式中某模式第一次出現的起始位置;如果在全部有效的文本和字元數據類型中沒有找到該模式,則返回零。
語法
PATINDEX ( '%pattern%' , expression )
參數
pattern
一個字元串。可以使用通配符,但 pattern 之前和之後必須有 % 字元(搜索第一個和最後一個字元時除外)。pattern 是短字元數據類型類別的表達式。
expression
一個表達式,通常為要在其中搜索指定模式的列,expression 為字元串數據類型類別。
比較
CHARINDEX 和 PATINDEX
CHARINDEX 和 PATINDEX 函數都返回指定模式的開始位置。PATINDEX 可使用通配符,而 CHARINDEX 不可以。
這兩個函數都帶有兩個參數:
希望獲取其位置的模式。使用 PATINDEX,模式是可以包含通配符的字面字元串。使用 CHARINDEX,模式是字面字元串(不能包含通配符)。
字元串值表達式(通常為列名),Microsoft® SQL Server™ 在其中搜索指定的模式。
例如,查找模式"wonderful"在 titles 表中 notes 列的某一特定行中的開始位置。
USE pubs
SELECT CHARINDEX('wonderful', notes)
FROM titles
WHERE title_id = 'TC3218'
下面是結果集:
----------------
46
(1 row(s) affected)
如果未限制搜索的行,查詢將返回表中的所有行,並對在其中查找到該模式的所有行報告非零值,對其它行報告零值。
例如,使用通配符查找模式"candies"在 Categories 表中的 Description 列的任一行中的開始位置:
USE Northwind
GO
SELECT CategoryID, PATINDEX('%candies%', Description)AS POSITION
FROM Categories
WHERE PATINDEX('%candies%', Description) <> 0
如果沒有限制要搜索的行,查詢將返回表中的所有行,對在其中找到該模式的所有行報告非零值。
PATINDEX 對 text 數據類型很有用;除 IS NULL、IS NOT NULL 和 LIKE(這些是 WHERE 子句中對 text 類型有效的僅有的其它比較運算)外,PATINDEX 也可用於 WHERE 子句中。
⑨ SQL LIKE模糊查詢
--下面這個應該是可以的!
create proc procget --[存儲過程名]
@proc1 varchar(50),--這個是一定要存在的參數
@proc2 varchar(50),
@proc3 varchar(50)
as
--定義一個要執行的字元串語句
declare @aa varchar(200)
set @aa = 'select * from TA where ' + '[表中的列名] like ' + '''%' + @proc1 + '%'''
--組合要執行的語句
--如果參數為空,就加上字元空串,否則就加上相應的條件語句
set @aa = @aa + case when @proc2 is null then '' else ' and [表中列名] like'+'''%'+@proc2+ '%''' end
set @aa = @aa + case when @proc3 is null then '' else ' and [表中列名] like'+'''%'+@proc3+ '%''' end
--執行語句
exec(@aa)