如何使用SELECT语句作为MySQL IF()函数的参数?
可以将SELECT语句用作MySQLIF()函数的第一个参数。为了使其理解,请考虑“学生”表中的以下数据。
mysql> Select * from Students; +----+-----------+-----------+----------+----------------+ | id | Name | Country | Language | Course | +----+-----------+-----------+----------+----------------+ | 1 | Francis | UK | English | Literature | | 2 | Rick | USA | English | History | | 3 | Correy | USA | English | Computers | | 4 | Shane | France | French | Computers | | 5 | Validimir | Russia | Russian | Computers | | 6 | Steve | Australia | English | Geoinformatics | | 7 | Rahul | India | Hindi | Yoga | | 8 | Harshit | India | Hindi | Computers | | 9 | Harry | NZ | English | Electronics | +----+-----------+-----------+----------+----------------+ 9 rows in set (0.00 sec)
现在以下查询将在IF()函数中使用SELECT语句
mysql> Select ID, IF((Select COUNT(*) FROM Students WHERE Language = 'English')>(Select COUNT(*) from Students WHERE Language <> 'English'),(CONCAT("Name is ", Name)),(CONCAT("Course is ", Course))) AS 'Name/Course' from Students;
+----+-------------------+
| ID | Name/Course |
+----+-------------------+
| 1 | Name is Francis |
| 2 | Name is Rick |
| 3 | Name is Correy |
| 4 | Name is Shane |
| 5 | Name is Validimir |
| 6 | Name is Steve |
| 7 | Name is Rahul |
| 8 | Name is Harshit |
| 9 | Name is Harry |
+----+-------------------+
9 rows in set (0.00 sec)热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语