有時候在修改某一個字段的值得時候我們需要根據(jù)當前字段的不同狀態(tài)進行不同處理,
陜西網(wǎng)站建設公司成都創(chuàng)新互聯(lián)公司,陜西網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為陜西成百上千家提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務好的陜西做網(wǎng)站的公司定做!
比如對于用戶表,我們需要記錄下來用戶被訪問的次數(shù),但訪問次數(shù)的初始值為 null。
如下:
CREATE TABLE `test` (
`id` ?int(11) NULL DEFAULT NULL ,
`name` ?varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`visit_num` ?int(11) NULL DEFAULT NULL
)
我們就可以使用如下的 sql 進行判斷和修改
UPDATE test set visit_age=if(visit_num is null,1,visit_num+1) where id=1。
mysql中沒有if可以使用case when then end 來代替;
例如:查詢語句select case 字段 when 1 then '一'
when 2 then '二' end from 表名;
交換以下工資信息表中的m和f
這里主要練習一下兩種條件方法,先是case when方法,
語法是CASE expressing WHEN condition THEN return
這里expressing 不是必須的,如果有,就是拿來和condition進行比較的,意即如果有expressing,默認將它和WHEN后面的條件進行=比較,如果真,返回THEN后面的結果。下面是有expressing和沒有expressing的兩種寫法:
或者,我們可以用if方法
if的語法是IF(condition, value_if_true, value_if_false)
假如expr1不為NULL,則 IFNULL() 的返回值為expr1; 否則其返回值為 expr2。IFNULL()的返回值是
數(shù)字或是字符串,具體情況取決于其所使用的語境。
如expr 為null,那么isnull() 的返回值為 1,否則返回值為 0。
如果expr1 = expr2 成立,那么返回值為NULL,否則返回值為expr1。這和CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END相同。
控制流程函數(shù)
CASE value WHEN [compare-value] THEN result [WHEN
[compare-value] THEN result ...] [ELSE result] END CASE WHEN [condition]
THEN result [WHEN [condition] THEN result ...] [ELSE result] END
例:
mysql SELECT IF(12,'yes ','no');
- 'yes'
ifnull函數(shù)參數(shù)解析:第一個參數(shù)為 字段的名字,第二個參數(shù)為 最終替換成的值。如果 第一個字段的值 為 NULL,查詢的結果中 會被 替換成 0.
三目運算:IF(expr1,expr2,expr3) 。如果 expr1是TRUE,則IF()的返回值為expr2; 否則返回值則為expr3
正則解析:如果 第一個 參數(shù)中的正則 匹配成功,if() 的值 為 第二個參數(shù)的值。否則為 第三個參數(shù)的值。
答案(先把 所有 學生的語文成績 查出來 作為一個 新表,然后 對新表 進行 分組 聚合):
答案:
網(wǎng)頁題目:mysql中if怎么使用的簡單介紹
分享URL:http://jinyejixie.com/article40/dsedheo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站設計公司、響應式網(wǎng)站、自適應網(wǎng)站、做網(wǎng)站、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)