转换PHP条件语句到MySQL的if-then条件语句
问题描述:
我需要这个PHP代码转换为MySQL查询相当于转换PHP条件语句到MySQL的if-then条件语句
$name = 'John Doe';
if($citizenship == 'o') {
if($country == 'US') {
$status = 'US-INTL';
}else{
$status = 'INTL';
}
} elseif {
$status = 'US'
}
我有MySQL的麻烦,如果性陈述,甚至阅读他们很小的后documentation就可以了。我尝试了不同的嵌套技术,但都失败了,因为我不知道语法。例如:
SELECT name, IF citizenship='US' THEN
IF country='US' THEN 'US-INTL' AS status
ELSEIF 'INTL' AS status
ELSE
'US' AS status
END IF
FROM people
的MySQL应该返回类似
_________________
name | status
-----------------
John Doe | US-INTL
-----------------
答
SELECT name,
CASE WHEN citizenship = 'US'
THEN CASE WHEN country='US'
THEN 'US-INTL'
ELSE 'INTL'
END
ELSE 'US'
END status
或MySQL特定的方式:
SELECT name,
IF(citizenship = 'US',
IF(country='US', 'US-INTL', 'INTL'),
'US') status
蛋cellent!两个人都工作。我会选择第一选择,因为它对我更有意义,并且更具可读性。 – user785179 2012-07-17 23:51:08