以下的文章主要描述的是MySQL 列值比較,以及相關的邏輯函數的詳細介紹 ,本文主要是以代碼的方式來引出MySQL 列值比較的實際操,以下就是文章的具體內容。希望會給你帶來一些幫助在此方面。
如何進行表達式求值,就如Javascript中的eval
Sql代碼
- CREATE TABLE `abc` (
- `uid` int(10) NOT NULL,
- `num1` int(8) NOT NULL,
- `num2` int(8) NOT NULL,
- `num3` int(8) NOT NULL,
- PRIMARY KEY (`uid`)
- ) ENGINE=InnoDB DEFAULT CHARSET=gbk
- CREATE TABLE `abc` (
- `uid` int(10) NOT NULL,
- `num1` int(8) NOT NULL,
- `num2` int(8) NOT NULL,
- `num3` int(8) NOT NULL,
- PRIMARY KEY (`uid`)
- ) ENGINE=InnoDB DEFAULT CHARSET=gbk
任務:是完成每列數據的比較,將uid 以及最大數據列顯示出來。
MySQL 列值比較 邏輯函數IF :方法:
Sql代碼
- select if((select if(num1>num2,num1,num2))>num3,
(select if(num1>num2,num1,num2)),num3)as num,uid from abc;- select if((select if(num1>num2,num1,num2))>num3,
(select if(num1>num2,num1,num2)),num3)as num,uid from abc;
這樣寫感覺不好,有沒好的方法來比較。
結果如下:
Java代碼
- +-----+-----+
- | num | uid |
- +-----+-----+
- | 3 | 1 |
- | 3 | 2 |
- | 4 | 3 |
- | 5 | 4 |
- | 8 | 5 |
- | 13 | 6 |
- | 56 | 7 |
- +-----+-----+
- 7 rows in set
以上的相關內容就是對MySQL 列值比較 邏輯函數IF 的介紹,望你能有所收獲。