sql語句if判斷
① sql if 語句中怎麼判斷一個字元串中是否包含ABC字元 if 內容 like "專家" then 不成呀。
CHARINDEX
傳回字元字串中指定運算式的起始位置。
語法
CHARINDEX ( expression1 , expression2 [ , start_location ] )
引數
expression1
是包含要尋找的字元序列的運算式。expression1 是短字元資料型別類別的運算式。
expression2
是個運算式,通常是搜尋指定序列的資料行。expression2 是字元字串資料型別類別的運算式。
start_location
Is the character position to start searching for expression1 in expression2.若 start_location 未提供、為負數或零,則會由 expression2 的開頭開始搜尋。
傳回型別
int
故:if CHARINDEX(內容, '專家') > 0
② sql語句查出的數據為空,怎麼用個if語句判斷,然後作出處理
可以實現,以sql server為例看:
if not exists(select userName from food join diningcar on food.foodId=diningcar.foodId join users on diningcar.userId=users.userId where (comment=0 or comment=-1) and userName='zq' group by userName)
select 0,'zq'
else
select sum(price),userName from food join diningcar on food.foodId=diningcar.foodId join users on diningcar.userId=users.userId where (comment=0 or comment=-1) and userName='zq' group by userName
方法二:
select isnull(sum(price),0),userName
from food join diningcar on food.foodId=diningcar.foodId
join users on diningcar.userId=users.userId
where (comment=0 or comment=-1) and userName='zq'
group by userName
不知道是不是你想要的結果,但是我有個疑問,你為什麼不在程序里進行判斷,而是要讓sql語句判斷呢?
③ sql if判斷語句怎麼寫
在SQL查詢語句中,可以使用CASE WHEN來判斷、並出結果;
如果是在過程或者SQL訪問代碼中,使用IF ... THEN
④ sql語句中判斷條件的使用
1、首先我們打開SQL Server Management Studio管理工具,點擊【新建查詢】,新增一個書寫sql語句的窗口。
⑤ sql語句中if條件的使用
1、查詢選項中select的使用
SELECT IF((SELECT count(*) FROM `user`)>10,'大於10條','小於10條')msg FROM `user` WHERE id=2;
如下圖所示:
判斷總條數大於10,則顯示為'大於10條',否則顯示'小於10條'
2、where條件中的使用
SELECT name,id FROM `user` WHERE IF((SELECT count(*) FROM `user`)=2,(id=3),(id=2));
如下圖所示:
判斷如果user表中的數據總數等於2條,則查詢where id=3的name和id,否則查詢id=2的name和id
⑥ SQL中如何使用IF語句
SQL中的if語句與偽代碼的寫法很相似,即:
IF (條件) then
執行語句體
END IF;
舉例:
begin
if 1 > 0 then
dbms_output.put_line('1>0');
end if;
end;
⑦ sql 中的if 判斷 語句應該怎麼寫
sql中的if語句寫法和java中差不多,都是先定義變數再使用變數進行判斷。由於你的提問不是很清晰,我就自己的看法解答下你的問題:
如果你指的是查詢條件的話:select
需要查詢的欄位,若為所有欄位這里是*
from
表名
where
查詢條件例如name='llo'
and
age='50';
如果你指的是sql代碼的話:
變數名
Number:=0;
變數名
Number:=0;Num為屬性
Select
欄位名
Into
變數名
from
表名
就不多寫了,條件同查詢條件結束時要有;號注意英文字元,這樣會把查詢到的欄位值賦給變數,當使用if語句進行判斷時,取到變數名進行判斷就好。if判斷語句同:if(變數名!=0)
then
返回true時需要運行的語句
end
if;
--為注釋
⑧ 如何在sql查詢中使用if和case語句
if 作為條件判斷,一般用在存儲過程或者函數裡面;
譬如
if sqlstate ='02000' then
select xxx from tab
case是作為判斷,用在查詢當中
select id, case when id = 1 then 'one' else 'null' end
高效兩個沒有可比性,深究一點,都是一個邏輯判斷,然後出結果,所以旗鼓相當,沒必要在這個問題上探究性能問題