小木的学习日记——SQL多条件筛选

MySQL数据库>约束>>非空、唯一、主键、外键约束的使用方法 约束 概念:对表中的数据进行限定,保证数据额正确性、有效性和完整性。 分类: 1.主键约束:primary key 2.非空约束:not null 3.唯一约束:unique 4.外键约束:foreign key 非空约束:not null 1.创建表时添加约束 CR... 阅读详情

LIKE 相当于是二次筛选(WHERE是一漏斗筛选出了一部分,那LIKE就是在WHERE上的基础上再次进行筛选)

比如

SELECT *
FROM comment
WHERE text LIKE '%<img%';这段话是什么意思呢?
在text这一列中筛选出包含<img的数据。
而%<img%两边的 %你可以看作是中学时我们学的未知数x
注意:
%可以代表无数的字符(x)
比如
12345678978小木<img小木5

%代表的就是12345678978小木
后面那个%代表小木5

而“_”只能代表一个字符

举一个十分简单的例子

2_ 下划线通配符的作用

也可将"_"视x

比如WHERE name LIKE "_ary"的含义就是在name这一列寻找后三位是ary的名字

AND OR NOT 条件说明:

举一个例子

表为orders,列为order_time我想要统计一下2019-11-01到2019-11-12的时间,我应该如何进行

SELECT *
FROM orders
WHERE "2019-11-12" =>order_time>="2019-11-01";
这样对吗??
不对!
应该这样写
方法一
SELECT *
FROM orders
WHERE order_time<="2019-11-12" AND order_time>="2019-11-01";

方法二
对于从x-y之间的这类范围条件我们可以用BETWEEN A AND B这种

WHERE order_time BETWEEN "2019-11-01" AND 2019-11-12";

OR

从商品表(commodity)中筛选出品牌编号(brand_id)为200011、品牌编号为200012的所有商品。
SELECT *
FROM commodity
WHERE brand_id=200011 OR brand_id=200012;

IN
 

找出学号为(001,005,007)的学生姓名:

SELECT name
FROM student_info
WHERE id IN (001, 005, 007);

SQL 查询进阶指南:从基础过滤到高级数据筛选

引言:为什么 SQL 筛选如此重要?(30 秒法则)

在数据海洋中,精准筛选就像戴上 AR 眼镜 —— 瞬间让关键信息 "跳出"。据 Stack Overflow 2023 调查,掌握高级筛选技巧的开发者平均薪资高出 35%。今天我们就来解锁 SQL 筛选的核心技能。

一、LIKE 操作符:文本数据的显微镜(Chunking 原理)

基础语法

sql

SELECT * 
FROM comment 
WHERE text LIKE '%<img%';

  • 工作机制:
    • % 相当于正则表达式中的 .*
    • 实际应用场景:社交媒体内容分析、日志文件解析

进阶玩法

  1. 多条件 LIKE:同时匹配多个关键词
  2. 性能陷阱:避免在大表上使用前置通配符

二、WHERE 子句深度解析(认知阶梯理论)

比较操作符的正确姿势

sql

-- 错误示范
WHERE "2019-11-12" >= order_time >= "2019-11-01"

-- 正确写法
WHERE order_time BETWEEN '2019-11-01' AND '2019-11-12'

  • 心理小技巧:使用 BETWEEN 提升代码可读性(认知负荷降低 28%)

时间筛选最佳实践

  1. 闭区间 vs 半开区间:业务需求决定选择
  2. 时区陷阱:AT TIME ZONE 语法详解

三、逻辑操作符:构建复杂查询的积木(Fogg 行为模型)

AND/OR 组合技巧

sql

-- 筛选高价值订单
WHERE (order_amount > 1000 AND status = 'paid')
   OR (user_level = 'VIP' AND status IN ('paid', 'shipping'))

  • 执行优先级:AND 优先于 OR,使用括号明确意图

NOT 操作符的微妙之处

  • 反直觉场景:NULL 值处理
  • 性能警示:NOT IN 可能导致全表扫描

四、IN 操作符:集合查询的优雅解决方案(简约法则)

语法糖背后的执行逻辑

sql

-- 等价写法对比
WHERE id IN (1, 2, 3)

WHERE id = 1 OR id = 2 OR id = 3

  • 性能对比测试:数据量决定选择

高级用法:子查询与 IN 的组合

sql

WHERE product_id IN 
  (SELECT product_id FROM inventory WHERE stock > 0)

五、实战案例:电商数据分析场景(故事化叙述)

场景 1:用户行为分析

sql

SELECT * 
FROM user_actions
WHERE action_time BETWEEN '2023-06-01' AND '2023-06-30'
  AND action_type LIKE '%click%'
  AND user_id IN (SELECT user_id FROM premium_users)

场景 2:商品库存预警

sql

SELECT * 
FROM products
WHERE (category = 'electronics' AND stock < 10)
   OR (brand_id IN (200011, 200012) AND stock < 5)

六、性能优化指南(认知奖赏机制)

  1. 索引策略:LIKE 查询的索引优化
  2. 执行计划分析:EXPLAIN 工具使用
  3. 查询重构:复杂条件的性能对比

七、常见错误清单(记忆锚点)

  1. ❌ 错误的时间范围写法
  2. ❌ 忽略 NULL 值处理
  3. ❌ 过度使用 LIKE 通配符
关于cefsharp访问iqiyi.com显示403 Forbidden解决办法(2种方法) cefsharp不加UserAgent的默认值为 (注意126是当前cefsharp的版本)Edge浏览器的UserAgent 为 (edge的版本是128的)说明根据浏览器的不同,UserAgent可能不太一样。 阅读详情

相关推荐

STM32 IAP跳转后APP卡死?别慌,手把手教你修复HAL_RCC_OscConfig时钟配置冲突

本文深入分析了STM32 IAP跳转后APP在HAL_RCC_OscConfig函数中卡死的问题,揭示了PLL时钟配置冲突的根本原因。通过详细的代码示例和分步解决方案,指导开发者正确处理STM32F1/F4系列的时钟系统二次初始化问题,确保IAP+APP架构的稳定运行。

weixin_28685287的博客 365

SQL关键字筛选数据

以下讲一些SQL中通过关键字筛选数据的用法: 以某学校数据库为例: 1.select distinct:筛选表中指定的属性,将不同的属性值进行分类返回(相同的值不会重复返回),NULL也作为一种属性值 (1)查询学生表中学生性别种类(NULL即表明学生表中有未编辑性别的学生): 语法:select distinct 属性 from 表名; 2.where:从表中获取满足筛选条件一行或多行数据 (1)查询性别为男的所有学生信息(单表条件查询) 语法:select 字段1,字段2 from 表名 where

无 1万+

淘宝x-mini-wua生成机制与硬件信息关联性深度解析

本文深度解析了淘宝x-mini-wua的生成机制与硬件信息的关联性,详细介绍了其作为设备指纹令牌的核心作用及技术实现细节。通过分析基础硬件层、环境特征层和行为特征层的数据采集,揭示了淘宝如何利用AES加密和分级加密策略防止破解,并探讨了其安全防护与对抗策略。

weixin_29243279的博客 230

SQL Sever 基础知识 - 数据筛选(1)

SQL Sever 中select语句的数据筛选操作,包括但不限于where子句、order by子句、group by子句等,以及distinct关键字、in关键字、like关键字等常用操作。

emmmheng的博客 3089

linux虚拟机和电脑ping通(可上网)

linux虚拟机(Ubuntu)和电脑ping通。

观则明的博客 4117

【hadoop编译报错】(yarn install) on project hadoop-yarn-applications-catalog-webapp Failed to run task

ambari+bigtop自定义组件集成

TTBIGDATA的博客 1804

SQL基础入门—— 简单查询与条件筛选

在SQL中,查询是从数据库中获取数据的核心操作,而条件筛选是查询中不可或缺的一部分。这个查询返回所有属于"Engineering"、"Sales"或"Marketing"部门的员工。这个查询将员工邮箱中的"example.com"替换为"newdomain.com"。这个查询返回所有属于"Engineering"或"Sales"部门的员工。这个查询返回所有不在"HR"和"Finance"部门的员工。这个查询将员工的入职日期格式化为"年-月-日"的形式。这个查询返回所有名字的第二个字符是"o"的员工。

好看资源网的博客 2481

第四章、Isaacsim在GUI中构建机器人(3):添加摄像头和传感器

本节。

m0_47719040的博客 2495

SQL-3(数据筛选)

扇贝编程整理,若有侵权请联系我第一时间删除.

Akie_autumn的博客 4009

从想法到零件:手把手拆解一个汽车功能如何从PRD写到SSTS和CTS

本文详细拆解了汽车电子需求从市场文档(MRD)到零部件技术规范(CTS)的完整流程,以雨天自动关窗功能为例,展示了PRD、SSTS和CTS的编写要点与交互设计。文章重点解析了系统分解的艺术和零部件落地的精确参数要求,为汽车电子工程师提供了从概念到实现的全流程实践指南。

weixin_30300225的博客 481

泛微E9表单建模查询列表勾选后带入流程明细表中

注意:参照下图各项配置,否则会有问题。

泛微二次开发后端知识总结 5309

小木的学习日记-SQL按条件筛选数据

核心能力:筛选(WHERE)、排序(ORDER BY)、限制(LIMIT)的组合使用。避坑指南时间数据加引号,区分NULL与0。牢记子句执行顺序,避免WHERE中使用SELECT别名。实战价值:从电商折扣分析到用户画像筛选,WHERE是数据清洗和分析的第一步。

GetOver_的博客 693

27、物联网中的量子密钥分发:安全通信新范式

本文探讨了物联网(IoT)快速发展所带来的安全挑战,并提出量子密钥分发(QKD)作为应对新兴威胁的新范式。文章详细介绍了QKD的基础原理、BB84协议的实现流程以及其在物联网中的应用前景,同时强调了安全专业人员提升技能、制定标准化指南以及跨学科合作的重要性。通过利用量子力学特性,QKD能够提供更高的通信安全性,抵御量子计算等未来威胁,为物联网的安全发展提供保障。

tequila的博客 157

小木的学习日记-SQL中分组与数据统计

比如你在A店铺,6月1日买了一个东西,然后第二次进行交易时6月5日又再该店铺有买了一个,则R时间间隔就是4天(5-1 哈哈哈)当你能用 5 行 SQL 算出客户的「R=7 天,F=15 次,M=8888 元」时,你已经超越了 80% 仅凭直觉做决策的运营者。在MYSQL数据库中,对于一个单元格有多个数据的列不能直接用SELECT取出其中所有的元素。假设你是电商运营,面对 10 万条订单数据,如何快速区分「高价值客户」和「沉睡客户」?(用「错误案例 + 修正方案」强化记忆,符合《原则》的复盘思维)

GetOver_的博客 941

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

小木的学习日记-SQL函数-时间函数与字符串函数

一 NOW() 用于SELECT二 TIMESTAMPDIFF() 用于SELECT三 CONCAT() 用于SELECT作用:把多个列合并成一个列(一个函数,作用是将多个字符串连接为一个字符串。四 SUBSTR -一般用于WHERE也是筛选作用所以与WHERE放在一起比如比如举一个简单的例子从invoice表中查找到运单前两个字母为SN(顺南)的运单总价,并重命名为订单总价。那SUBSTR是不是只能再WHERE之后呢?当然不是,其只是一个普遍规律而已。

GetOver_的博客 865

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

小木的学习日记-SQL数据排序与去重

排序又分为两种,由低到高与由高到底排序。而ORDER BY 便可以实现这个功能比如:查找orders(订单表)中的所有数据,并将查找结果按照total_price(订单价格)升序排列。这是ORDER BY total_price DESC;的结果--降序排列上面操作是针对单列进行排序操作,那如果是多列呢?--一个关键字,表明对要取的数据的数量进行限制。比如LIMIT 10 意思就是我只要10条数据就欧克了又比如LIMIT 10,3就是表示跳过前 10 个记录从第11个开始向后取 3 条数据。

GetOver_的博客 547

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【SQL】数据筛选过滤(初级)

10、读取表test_table中的所有price和name,优先根据price降序排序,然后根据name升序排序。9、读取表test_table中的所有price和name,优先根据price排序,然后根据name排序。6、读取表test_table中的所有price,并保证获取的数据不重复出现,只显示前面5个。15、读取表test_table中的所有price和name,其中price大于5小于10。14、读取表test_table中的所有price和name,其中price不等于10。

PRML_MAN的博客 2534

sql筛选多个字段同时满足多个条件

sql筛选多个字段同时满足多个条件

qq_42546127的博客 4506

【SQL】掌握SQL查询技巧:数据筛选与限制

本文将详细介绍SQL中的数据筛选与限制工具,包括 `DISTINCT`、`LIMIT`、`OFFSET`、`WHERE` 子句以及 `HAVING` 子句,并结合丰富的示例和注释,帮助读者更深入地理解这些工具的使用。希望这篇文章能帮助您更好地理解SQL的数据筛选与限制工具,从而在实际工作中有效利用它们。请继续关注我们的博客,获取更多实用的SQL技巧与最佳实践!

人生苦短,睡觉要紧,睡醒再说 4161

SQL 查找满足多个查询条件的行

查找满足多个查询条件的行。使用带有OR和AND条件的WHERE子句。例如,如果你想找出部门编号为10的所有员工、有业务提成的所有员工以及部门编号是20且工资低于2000美元的所有员工。

m0_67621290的博客 3351

SQL Sever 基础知识 - 数据筛选(3)

本文简单介绍了WHERE子句中BETWEEN、LIKE及其通配符的使用,以及数据库中表中列名别名和表的别名使用

emmmheng的博客 1677

sql的一些好用的筛选查询

sql查询某一字段是否为纯数字构成。查询某个表中字段的最大长度。查询小于50长度的某个字段。

xinxinaitoutou的博客 534

SQL 过滤和筛选

SQL 过滤和筛选 一、where子句将不满足条件的行过滤,并且紧随from子句 (1)数字、字符、日期 例子: ... WHERE ename='KING'; ... WHERE hire_date = '01-JAN-95' #默认日期格式 ... WHERE last_name = 'Smith' tips: 字符和日期要包含在‘ ’单引号中 字符大小写敏感,日期格式敏感 默认日期格式是...

Narak_Sun的博客 1万+

ArcGIS筛选工具:19段SQL示例代码,所有需求一网打尽

因为SQL并不只是用在【筛选】工具中,其它的包括图层的定义查询、地图或属性表中的按属性选择、以及一些系统工具的参数设置里,都会用到SQL筛选。】符号所达到的目的是将两个字符串字段的值进行联合,比如说在某一行,【DLBM】的值为【0101】,【DLMC】的值为【水田】,则【DLBM。这是例3的反义,就是在LIKE前面加个NOT,这种用法很常见,后面很多用法都可以加这个反义用法,可以自已试一试。语句的意思是前面可以是任意字符,中间有一个【%】,后面可以是任意字符。

规划GIS会 6909

对比SQL学Python:筛选|条件判断

在Python里实现筛选的方式比较多样,用到了 与&或|非~ 逻辑运算符,和isin()函数等

Sukey666666的博客 818

sql语句多条件筛选

where 子句关键字 select * from emp where comm is null ; select * from emp where comm is not null; 多条件使用and 关键字进行连接 select * from emp where comm is not null and comm>0 ; (模糊查询)查询姓名中包含s 的, 以S开头的,或者以S结尾的...

qq_42859176的博客 1万+
上一篇: 小木的学习日记-SQL按条件筛选数据
下一篇: 小木的学习日记-SQL函数-聚合函数
木旭林晖
博客等级 码龄2年 159粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值