SQL技术咨询:能否在SELECT语句中使用比较运算符?
SELECT子句中使用比较运算符的正确方式
当然可以在SELECT子句里用比较运算符实现条件判断,但你给出的示例语法不符合SQL规范,不同数据库有对应的正确写法,以下是几种常见实现方案:
标准SQL通用写法(CASE表达式)
这是所有SQL数据库都兼容的标准语法,适用性最广:SELECT CASE WHEN value > value1 THEN 'True' ELSE 'False' END AS Comparison FROM Table;MySQL/MariaDB专属写法(IF函数)
如果你使用MySQL或MariaDB,可以用更简洁的IF函数:SELECT IF(value > value1, 'True', 'False') AS Comparison FROM Table;PostgreSQL/SQL Server专属写法(IIF函数)
PostgreSQL 9.4及以上版本、SQL Server支持IIF函数,语法和你示例的思路更贴近:SELECT IIF(value > value1, 'True', 'False') AS Comparison FROM Table;
不管用哪种写法,>、<、=、>=、<=、<>等常见比较运算符都可以嵌入到条件逻辑中,用来生成你需要的计算列。
内容的提问来源于stack exchange,提问作者JollyBengali
相关产品推荐
相关产品推荐

