SQL 之 小技巧总结

一、如何查询一个字段数据中是否包含特定字符

eg:查看是否包含逗号(",")

sql 复制代码
SELECT *
FROM table_name
WHERE column_name LIKE '%,%';

这里,% 是通配符,表示任意数量的任意字符。'%,%' 表示查询column_name中包含逗号(",")的任何值。

二、如何查询SQL表中某个字段值不为固定值

eg:要查询SQL表中 test 字段值不为 - 的记录

1. <>

sql 复制代码
SELECT *
FROM your_table
WHERE test <> '-';

2. not

sql 复制代码
SELECT *
FROM your_table
WHERE NOT (test= '-');

3. 如果想确保 test 字段不仅不为 - ,而且也不为空(NULL),可以添加额外的条件检查:

sql 复制代码
SELECT *
FROM your_table
WHERE fin_asin <> '-'
  AND fin_asin IS NOT NULL;

三、利用 limit 和 offset 限制查询sql数据量过大或者实现分页查询的问题

sql 复制代码
SELECT *
FROM products
ORDER BY release_date DESC
LIMIT 20 OFFSET 40;

其中 limit 20 表示展示的数据量为 20条,offset 40 表示从第41条数据开始展示。

四、 使用 EXISTS 或 NOT EXISTS 检查子查询结果

sql 复制代码
SELECT orders.order_id, customers.customer_name
FROM orders
JOIN customers ON orders.customer_id = customers.customer_id
WHERE NOT EXISTS (
  SELECT 1
  FROM order_returns
  WHERE order_returns.order_id = orders.order_id
);

后续待补充。。。

相关推荐
深念Y4 小时前
Opencode Event 表写入优化方案
数据库·人工智能·ai·node.js·bug·优化·opencode
竹枝溪4 小时前
MySQL进阶:约束、多表设计、多表查询与事务
java·数据库·mysql·事务·子查询·acid·多表查询
weixin_431600445 小时前
NestJS 入门(9):连上数据库,SQL 写在哪?
数据库·后端·sql·学习·nest.js
roman_日积跬步-终至千里5 小时前
【Spark与SQL网关(1)】Spark 提交模式与 Spark Thrift Server:到底在“提交”什么
大数据·sql·spark
math_hongfan5 小时前
一对多的数据库姻缘:ArkTS 为鸿蒙订单设计外键与明细表
数据库·华为·harmonyos
城管不管5 小时前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
XLYcmy5 小时前
PDF论文处理器 - 功能总结
数据库·python·pdf·csv·pymupdf·dify·文本分割
树码小子5 小时前
MySQL 的事务隔离级别(重点面试题)
数据库·mysql
01_ice6 小时前
MySQL表的约束
数据库·sql·mysql
北漂燕郊杨哥6 小时前
Win11 环境下 phpStudy 安装 Redis 最新版,并为 PHP 8.5.9(NTS)配置 redis 扩展
数据库·redis·php