描述条件处理的SQL查询示例
问题:编写一个SQL查询以显示2列。第一列应具有ORDER_ID,第二列应将值设为YES/NO,以便基于ORDER_TOTAL>500进行免费送货。
解决方案
根据ORDER_TOTAL标准,可以显示查询ORDER_ID和免费送货结果的查询,如下所示。
示例
SELECT ORDER_ID, CASE WHEN ORDER_TOTAL > 500 THEN ‘YES’ ELSE ‘NO’ AS FREE_SHIPPING END FROM ORDERS
我们将使用CASE表达式,通过它们我们可以实现检查ORDER_TOTAL的逻辑。如果ORDER_TOTAL大于500,则免费送货为“是”,否则,我们将为“否”。该查询将返回两列ORDER_ID和FREE_SHIPPING。
例如,如果下面有ORDERSDB2表。
然后,带有CASEWHEN表达式的SQL查询将返回以下结果。