當前位置:生活全書館 >

綜合知識

> mysql中if語句怎麼寫

mysql中if語句怎麼寫

1. mysql中if語句的expr2中怎麼寫入逗號

mysql手冊中如是說:

mysql中if語句怎麼寫

IF(expr1,expr2,expr3)

如果 expr1 為真(expr1 0 以及 expr1 NULL),那麼 IF() 返回 expr2,否則返回 expr3。IF() 返回一個數字或字元串,這取決於它被使用的語境:

mysql> SELECT IF(1>2,2,3);

-> 3

mysql> SELECT IF(1 'yes'

mysql> SELECT IF(STRCMP('test','test1'),'no','yes');

-> 'no'

如果 expr2 或 expr3 明確地為 NULL,那麼函式 IF() 的返回值型別為非 NULL 列的型別。(這在選擇在 MySQL 4.0.3 中新加入)。 expr1 是作為一個整數值被計算的,這就意味著,如果測試的是一個浮點型或字串值,就必須進行比較操作:

mysql> SELECT IF(0.1,1,0);

-> 0

mysql> SELECT IF(0.10,1,0);

-> 1

在上面第一種情況下,IF(0.1) 返回 0,是因為 0.1 被轉換為一個整數值,返回 IF(0) 的測試結果。這可能不是你所期望的。在第二種情況下,比較測試原浮點數是否為一個非零值。比較的結果被作為整數使用。 預設的 IF() 返回值型別 (當結果儲存在臨時表中時,這是非常重要的) 在 MySQL 3.23 中按下列方式確定: 表示式 返回值

表示式(expr2)或表示式(expr3)返回值為字串 字串

表示式(expr2)或表示式(expr3)返回值為浮點型值 浮點型

表示式(expr2)或表示式(expr3)返回值為整型 整型

如果表示式(expr2)和表示式(expr3)均是字串,同時兩個字串均是忽略字母大小寫的,那麼返回值也是忽略字母大小寫的(從 MySQL 3.23.51 開始)。

2. mysql中if語句的expr2中怎麼寫入逗號

mysql手冊中如是說:IF(expr1,expr2,expr3) 如果 expr1 為真(expr1 <> 0 以及 expr1 <> NULL),那麼 IF() 返回 expr2,否則返回 expr3。

IF() 返回一個數字或字串,這取決於它被使用的語境: mysql> SELECT IF(1>2,2,3);-> 3mysql> SELECT IF(1<2,'yes','no');-> 'yes'mysql> SELECT IF(STRCMP('test','test1'),'no','yes');-> 'no'如果 expr2 或 expr3 明確地為 NULL,那麼函式 IF() 的返回值型別為非 NULL 列的型別。(這在選擇在 MySQL 4.0.3 中新加入)。

expr1 是作為一個整數值被計算的,這就意味著,如果測試的是一個浮點型或字串值,就必須進行比較操作: mysql> SELECT IF(0.1,1,0);-> 0mysql> SELECT IF(0.1<>0,1,0);-> 1在上面第一種情況下,IF(0.1) 返回 0,是因為 0.1 被轉換為一個整數值,返回 IF(0) 的測試結果。這可能不是你所期望的。

在第二種情況下,比較測試原浮點數是否為一個非零值。比較的結果被作為整數使用。

預設的 IF() 返回值型別 (當結果儲存在臨時表中時,這是非常重要的) 在 MySQL 3.23 中按下列方式確定: 表示式 返回值 表示式(expr2)或表示式(expr3)返回值為字串 字串 表示式(expr2)或表示式(expr3)返回值為浮點型值 浮點型 表示式(expr2)或表示式(expr3)返回值為整型 整型 如果表示式(expr2)和表示式(expr3)均是字串,同時兩個字串均是忽略字母大小寫的,那麼返回值也是忽略字母大小寫的(從 MySQL 3.23.51 開始)。

標籤: 語句 mysql
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zonghezhishi/exrke4.html