1. UNION 操作符:
UNION 用于合并两个或多个 SELECT 语句的结果集。它去除了重复的行,确保返回唯一的结果。
-- 基本的 UNION 用法
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2;
-- 带有 ORDER BY 子句的 UNION 用法
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2
ORDER BY column1;
2. CASE 表达式:
CASE 表达式用于在查询中执行条件逻辑,类似于编程语言中的 switch 语句。它可以用于选择不同的输出值,具有灵活的语法。
SELECT
column1,
column2,
CASE
WHEN condition1 THEN 'Result1'
WHEN condition2 THEN 'Result2'
ELSE 'DefaultResult'
END AS result_column
FROM table;
-- 简化的 CASE 表达式
SELECT
column1,
column2,
CASE column3
WHEN 'Value1' THEN 'Result1'
WHEN 'Value2' THEN 'Result2'
ELSE 'DefaultResult'
END AS result_column
FROM table;
3. COALESCE 函数:
COALESCE 函数用于返回参数列表中的第一个非 NULL 值。它通常用于处理空值或未知值的情况。
SELECT
column1,
column2,
COALESCE(column3, 'DefaultValue') AS result_column
FROM table;
4. NULLIF 函数:
NULLIF 函数用于比较两个表达式,如果相等,则返回 NULL;否则返回第一个表达式的值。它通常用于处理避免出现除以零的情况。
SELECT
column1,
column2,
column3 / NULLIF(column4, 0) AS result_column
FROM table;
这些结构可以在查询中一起使用,以便更灵活地处理数据。例如,你可以在 CASE 表达式中使用 UNION 的结果,或者在 CASE 表达式中使用 COALESCE 或 NULLIF 处理条件逻辑。
转载请注明出处:http://www.zyzy.cn/article/detail/8203/PostgreSQL