我现在正在学习SQL,我想要做得更好,然后到目前为止。 我有2张桌子。
边框( id ,country1,country2,lenght), 国家/地区(名称,人口)
我想让所有国家围绕某个名为D的国家。
我的解决方案:
SELECT country1, country2 FROM borders WHERE country1 = 'D' OR country2= 'D'
但我不想得到2列。有没有选择才能获得一个? 谢谢你的帮助。
Painter21
答案 0 :(得分:4)
使用IF
:
SELECT IF(country1 = 'D', country2, country1)
FROM borders
WHERE 'D' IN (country1, country2)
如果您不使用MySQL,那么CASE
表达式将执行:
SELECT CASE country1 WHEN 'D' THEN country2 ELSE country1 END AS country
FROM borders
WHERE 'D' IN (country1, country2)