mysql when case 条件判断语名用法
发布:smiling 来源: PHP粉丝网 添加日期:2014-10-17 11:00:02 浏览: 评论:0
一个CASE表达式的默认返回值类型是任何返回值的相容集合类型,但具体情况视其所在语境而定,如果用在字符串语境中,则返回结果味字符串,如果用在数字语境中,则返回结果为十进制值、实值或整数值.
语法,代码如下:
- 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
实例,代码如下:
- SELECT CASE WHEN 10*2=30 THEN '30 correct'
- WHEN 10*2=40 THEN '40 correct'
- ELSE 'Should be 10*2=20'
- END;
复杂点,代码如下:
- SELECT CASE 10*2
- WHEN 20 THEN '20 correct'
- WHEN 30 THEN '30 correct'
- WHEN 40 THEN '40 correct'
- END;
实例,代码如下:
- /*
- mysql> SELECT Name, RatingID AS Rating,
- -> CASE RatingID
- -> WHEN 'R' THEN 'Under 17 requires an adult.'
- -> WHEN 'X' THEN 'No one 17 and under.'
- -> WHEN 'NR' THEN 'Use discretion when renting.'
- -> ELSE 'OK to rent to minors.'
- -> END AS Policy
- -> FROM DVDs
- -> ORDER BY Name;
- +-----------+--------+------------------------------+
- | Name | Rating | Policy |
- +-----------+--------+------------------------------+
- | Africa | PG | OK to rent to minors. |
- | Amadeus | PG | OK to rent to minors. |
- | Christmas | NR | Use discretion when renting. |
- | Doc | G | OK to rent to minors. |
- | Falcon | NR | Use discretion when renting. |
- | Mash | R | Under 17 requires an adult. |
- | Show | NR | Use discretion when renting. |
- | View | NR | Use discretion when renting. |
- +-----------+--------+------------------------------+
- 8 rows in set (0.01 sec)
- */
- Drop table DVDs;
- CREATE TABLE DVDs (
- ID SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
- Name VARCHAR(60) NOT NULL,
- NumDisks TINYINT NOT NULL DEFAULT 1,
- RatingID VARCHAR(4) NOT NULL,
- StatID CHAR(3) NOT NULL
- )
- ENGINE=INNODB;
- INSERT INTO DVDs (Name, NumDisks, RatingID, StatID)
- VALUES ('Christmas', 1, 'NR', 's1'),
- ('Doc', 1, 'G', 's2'),
- ('Africa', 1, 'PG', 's1'),
- ('Falcon', 1, 'NR', 's2'),
- ('Amadeus', 1, 'PG', 's2'),
- ('Show', 2, 'NR', 's2'),
- ('View', 1, 'NR', 's1'),
- ('Mash', 2, 'R', 's2');
- SELECT Name, RatingID AS Rating,
- CASE RatingID
- WHEN 'R' THEN 'Under 17 requires an adult.'
- WHEN 'X' THEN 'No one 17 and under.'
- WHEN 'NR' THEN 'Use discretion when renting.'
- ELSE 'OK to rent to minors.'--phpfensi.com
- END AS Policy
- FROM DVDs
- ORDER BY Name;
Tags: when条件判断 case条件判断
- 上一篇:不能远程访问mysql数据库解决方案
- 下一篇:mysql随机查询数据
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)