sql中decode用法-SQL
SQL 中 DECODE 函数用法
DECODE 函数是一个内置函数,用于根据输入表达式的值将一个值或一组值转换为另一个值或一组值。
语法:
DECODE(expression, value1, result1, value2, result2, ..., default_result)
登录后复制
参数:
- expression:要评估的表达式。
- value1, value2, ...:要匹配 expression 的值。
- result1, result2, ...:当 expression 与相应的值匹配时,返回的结果。
- default_result:当 expression 不与任何指定值匹配时,返回的结果(可选)。
用法:
DECODE 函数可以用于在 SQL 查询中实现条件逻辑。如果 expression 与指定的任何值匹配,则返回相应的 result。否则,返回 default_result。
例如,要查找客户的折扣率,我们可以使用以下 DECODE 函数:
SELECT customer_id, DECODE(customer_level, 'Gold', 0.10, 'Silver', 0.05, 'Bronze', 0.02, 0.00) AS discount_rate FROM customers;
登录后复制
在这个示例中:
- expression 是 customer_level。
- value1、value2 和 value3 是 'Gold'、'Silver' 和 'Bronze',它们是 customer_level 的可能值。
- result1、result2 和 result3 是 0.10、0.05 和 0.02,它们是与相应 customer_level 匹配的折扣率。
- default_result 是 0.00,它是当 customer_level 不与任何指定值匹配时返回的折扣率。
因此,该查询将返回客户 ID 和基于其 customer_level 计算的折扣率。