1. 使用子查询(Subquery)进行筛选:
```sql
SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT column_name FROM table_name WHERE condition);
```
2. 使用UNION操作符合并两个SELECT语句的结果集:
```sql
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
```
3. 使用EXISTS操作符检查子查询是否有返回结果:
```sql
SELECT column_name(s)
FROM table_name t1
WHERE EXISTS (SELECT column_name FROM table_name t2 WHERE condition);
```
4. 使用CASE表达式进行条件判断:
```sql
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
FROM table_name;
```
5. 使用GROUP_CONCAT函数将多行数据合并为一行:
```sql
SELECT column_name, GROUP_CONCAT(column_name SEPARATOR ', ')
FROM table_name
GROUP BY column_name;
```
6. 使用LAG和LEAD函数获取前一行和后一行的数据:
```sql
SELECT column_name, LAG(column_name, offset) OVER (ORDER BY column_name), LEAD(column_name, offset) OVER (ORDER BY column_name)
FROM table_name;
```
7. 使用窗口函数(Window Function)进行分组统计:
```sql
SELECT column_name, COUNT(*) OVER (PARTITION BY column_name) AS count
FROM table_name;
```
8. 使用COALESCE函数处理NULL值:
```sql
SELECT COALESCE(column_name, default_value)
FROM table_name;
```
9. 使用DATEDIFF函数计算日期差:
```sql
SELECT DATEDIFF(date1, date2) AS days_difference
FROM table_name;
```
10. 使用REGEXP正则表达式匹配字符串:
```sql
SELECT column_name
FROM table_name
WHERE column_name REGEXP pattern;
```
11. 使用IFNULL函数处理NULL值:
```sql
SELECT IFNULL(column_name, default_value)
FROM table_name;
```
12. 使用DATE_FORMAT函数格式化日期:
```sql
SELECT DATE_FORMAT(date, format) AS formatted_date
FROM table_name;
```
13. 使用REPLACE函数替换字符串中的字符:
```sql
SELECT REPLACE(column_name, old_string, new_string)
FROM table_name;
```
14. 使用ROUND函数四舍五入数字:
```sql
SELECT ROUND(column_name, decimal_places)
FROM table_name;
```
15. 使用DATEDIFF函数计算时间差:
```sql
SELECT TIMESTAMPDIFF(unit, datetime1, datetime2) AS time_difference
FROM table_name;
```
16. 使用SUBSTRING函数截取字符串:
```sql
SELECT SUBSTRING(column_name, start, length)
FROM table_name;
```
17. 使用TRIM函数去除字符串两端的空格:
```sql
SELECT TRIM(column_name)
FROM table_name;
```
18. 使用LIKE操作符进行模糊匹配:
```sql
SELECT column_name
FROM table_name
WHERE column_name LIKE pattern;
```
19. 使用INSTR函数查找子字符串在字符串中的位置:
```sql
SELECT INSTR(column_name, substring) AS position
FROM table_name;
```
20. 使用REVERSE函数反转字符串:
```sql
SELECT REVERSE(column_name)
FROM table_name;
```
21. 使用DATE_SUB函数计算日期减去指定天数后的日期:
```sql
SELECT DATE_SUB(date, INTERVAL expr unit) AS new_date
FROM table_name;
```
22. 使用DATE_ADD函数计算日期加上指定天数后的日期:
```sql
SELECT DATE_ADD(date, INTERVAL expr unit) AS new_date
FROM table_name;
```
23. 使用CONCAT函数连接两个或多个字符串:
```sql
SELECT CONCAT(string1, string2, ...) AS concatenated_string
FROM table_name;
```
24. 使用LENGTH函数获取字符串的长度:
```sql
SELECT LENGTH(column_name) AS length
FROM table_name;
```
25. 使用REPEAT函数重复字符串指定次数:
```sql
SELECT REPEAT(string, count) AS repeated_string
FROM table_name;
```
26. 使用INSTR函数查找子字符串在字符串中的位置(不区分大小写):
```sql
SELECT INSTR(LOWER(column_name), LOWER(substring)) AS position
FROM table_name;
```
27. 使用REGEXP_REPLACE函数替换字符串中的字符(支持正则表达式):
```sql
SELECT REGEXP_REPLACE(column_name, pattern, replacement) AS replaced_string
FROM table_name;
```
28. 使用IF函数进行条件判断:
```sql
SELECT IF(condition, value_if_true, value_if_false) AS result
FROM table_name;
```
29. 使用GREATEST和LEAST函数分别返回最大值和最小值:
```sql
SELECT GREATEST(column_name1, column_name2, ...) AS max_value,
LEAST(column_name1, column_name2, ...) AS min_value
FROM table_name;
```
30. 使用FORMAT函数格式化数字:
```sql
SELECT FORMAT(number, decimals) AS formatted_number
FROM table_name;
```
31. 使用DATEDIFF函数计算两个日期之间的天数差(支持跨年):
```sql
SELECT DATEDIFF(date1, date2) AS days_difference
FROM table_name;
```
32. 使用STR_TO_DATE函数将字符串转换为日期格式:
```sql
SELECT STR_TO_DATE(string, format) AS date
FROM table_name;
```
33. 使用SUBSTRING_INDEX函数截取字符串中的子串:
```sql
SELECT SUBSTRING_INDEX(column_name, delimiter, count) AS substring
FROM table_name;
```
34. 使用REPLACE函数替换字符串中的字符(支持正则表达式):
```sql
SELECT REPLACE(column_name, pattern, replacement) AS replaced_string
FROM table_name;
```
35. 使用REGEXP_INSTR函数查找子字符串在字符串中的位置(支持正则表达式):
```sql
SELECT REGEXP_INSTR(column_name, pattern) AS position
FROM table_name;
```
36. 使用CONCAT_WS函数连接多个字符串,用指定的分隔符分隔:
```sql
SELECT CONCAT_WS(separator, string1, string2, ...) AS concatenated_string
FROM table_name;
```
37. 使用REVERSE函数反转字符串(支持多字节字符集):
```sql
SELECT REVERSE(column_name) AS reversed_string
FROM table_name;
```
38. 使用IFNULL函数处理NULL值(支持多个参数):
```sql
SELECT IFNULL(column_name1, column_name2, ...) AS result
FROM table_name;
```
39. 使用COALESCE函数处理NULL值(支持多个参数):
```sql
SELECT COALESCE(column_name1, column_name2, ...) AS result
FROM table_name;
```
40. 使用CAST函数将数据类型转换为另一种数据类型:
```sql
SELECT CAST(column_name AS data_type) AS converted_value
FROM table_name;
```
41. 使用DATE_FORMAT函数格式化日期(支持自定义格式):
```sql
SELECT DATE_FORMAT(date, format) AS formatted_date
FROM table_name;
```
42. 使用SUBSTRING函数截取字符串中的子串(支持正则表达式):
```sql
SELECT SUBSTRING(column_name FROM start FOR length) AS substring
FROM table_name;
```
43. 使用REGEXP_REPLACE函数替换字符串中的字符(支持多字节字符集):
```sql
SELECT REGEXP_REPLACE(column_name, pattern, replacement) AS replaced_string
FROM table_name;
```
44. 使用INSTR函数查找子字符串在字符串中的位置(支持多字节字符集):
```sql
SELECT INSTR(column_name, substring) AS position
FROM table_name;
```
45. 使用LENGTH函数获取字符串的长度(支持多字节字符集):
```sql
SELECT LENGTH(column_name) AS length
FROM table_name;
```
46. 使用REPEAT函数重复字符串指定次数(支持多字节字符集):
```sql
SELECT REPEAT(string, count) AS repeated_string
FROM table_name;
```
47. 使用CONCAT函数连接两个或多个字符串(支持多字节字符集):
```sql
SELECT CONCAT(string1, string2, ...) AS concatenated_string
FROM table_name;
```
48. 使用REVERSE函数反转字符串(支持多字节字符集和自定义分隔符):
```sql
SELECT REVERSE(column_name SEPARATOR separator) AS reversed_string
FROM table_name;
```
49. 使用IF函数进行条件判断(支持多参数):
```sql
SELECT IF(condition1, value_if_true1, value_if_false1, condition2, value_if_true2, value_if_false2, ...) AS result
FROM table_name;
```
50. 使用GREATEST和LEAST函数分别返回最大值和最小值(支持多参数):
```sql
SELECT GREATEST(column_name1, column_name2, ...) AS max_value,
LEAST(column_name1, column_name2, ...) AS min_value
FROM table_name;
```




