SQL语句深入理解

9、深入理解 SQL Server 变量与流控制语句 本文深入介绍了 SQL Server 中的变量和流控制语句,涵盖用户定义数据类型、局部变量与全局变量的使用、表变量的特性以及流控制语句如 IF、WHILE、GOTO 和 WAITFOR 的应用。通过丰富的代码示例和详细解析,帮助开发者更好地掌握 SQL Server 的程序设计与数据处理技巧。 阅读详情

sql语句是一个数据库的深入的查询语句。今天我们就来说说sql语句的高级的用法。

首先我们来介绍下sql的通配符的使用.

1.limit限制了输出的结果的数量。比如在mysql数据库里面的写法select * from student limit 2。输出的结果只有2条数据库的记录,很简单,但是在其他的数据库里面确实由写不同。

2.like  模糊匹配。比如下面的sql语句  select * from student where name like ' 马% '  该sql的语句的意思就是查找姓名是以马开头的,在数据库的表里面。还有就是select * from student where name like '%马'  意思就是在数据库表里面查找以马结尾的名字

假如sql语句select * from student where name like '%马%'  在数据库里面查找包含马的关键字的名字。同时like还可以和not  and  or关键字来一起使用。

二  下面我们来看看sql里面的通配符的使用

1.sql的通配符和sql语句的一起使用。sql通配符用于搜索表里面的数据。

   1.% 用于替代0个或者是多个字符。

  2.。-  替代一个字符。

 3.   【charlist】字符列里面的任何的一个字符

4.   【^charlist】 不再字符序列的任何的一个字符或者是[!charlist]结果是都是一样的。

来看看下面的语句.

    1.select  * from websites where  url  like 'https%'   选取以https开头的网站

    2. select  * from  website  where    url  like  ‘%oo%’    选取url里面包含oo的所有网站

  3      .select * FROM Websites      WHERE    name LIKE '_oogle';   SQL 语句选取 name 以一个任意字符开始,然后是 "oogle" 的所有客户

   4.  下面的 SQL 语句选取 name 以 "G" 开始,然后是一个任意字符,然后是 "o",然后是一个任意字符,然后是 "le" 的所有网站:      SELECT * FROM Websites    WHERE name LIKE 'G_o_le';

 三  。在sql语句里面,我们也可以使用正则表达式来配合sql语句来一起使用。

  1.下面我们就来说说sql语句如何配合正则表达式来一起使用.

   MySQL 中使用 REGEXP 或 NOT REGEXP 运算符 (或 RLIKE 和 NOT RLIKE) 来操作正则表达式。

 下面的 SQL 语句选取 name 以 "G"、"F" 或 "s" 开始的所有网站:

下面我们来看看这个sql语句如何填写    

   select * from website where name REGEXP ' ^[GFS]  '  

  2.下面的 SQL 语句选取 name 不以 A 到 H 字母开头的网站: select  * from website where name regexp '^[ ^ A-H]'

   选择不以A到H所有开头的网站.

3.in  操作符容许你在where子句里面规定多个值.  来看看下面的代码  select * from  website where name in  ("google",“菜鸟教程”)

 

四   下面我们来看看sql语句的between语句的使用.

   1. between  操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。下面来看看语法

    来看看下面的语句

  SELECT column_name(s)     FROM table_name    WHERE column_name BETWEEN value1 AND value2;

 

   2.  not   between     表示的就是不再什么之间的。

     SELECT column_name(s)     FROM table_name    WHERE column_name    not    between    value1 AND value2;

 

3. 

下面的 SQL 语句选取alexa介于 1 和 20 之间但 country 不为 USA 和 IND 的所有网站:

实例    SELECT * FROM Websites   WHERE (alexa BETWEEN 1 AND 20)      AND NOT country IN ('USA', 'IND');

   

 

4.下面的sql语句用于选取name以下面的 SQL 语句选取 name 以介于 'A' 和 'H' 之间字母开始的所有网站:

来看看sql语句的写法   SELECT * FROM        Websites   WHERE name BETWEEN 'A' AND 'H';

 

 

5.

下面的 SQL 语句选取 name 不介于 'A' 和 'H' 之间字母开始的所有网站:

实例

   SELECT * FROM  Websites   WHERE name NOT BETWEEN 'A' AND 'H'

;在sql语句里面也可以结合正则表达式来使用Mysql 中间使用Regexp  或者是NOT Regexp来操作正则表达式,来看看下面的语句

select * from student where name Regexp'^[张]'   表示的就是在表里面查找以姓张开头的所有人.

假如不查找姓开头的所有人,语句是这样的select * from student where name Regexp ‘^[^张]’;

 

 

6.in  操作符用于在where子句里面规定多个值。例如

select * from student where name in(value1,value2,value3,value4.......)表示在着几个值里面查找。

 

SQL   Between 

between操作符用于选取介于两个范围之间的数据的值。这些值可能是数值,文本,或者日期

来看看下面的sql    select * from student where number between A   and  B

NOT  BETWEEN 刚好和上面的相反.

 

7.来看看带有in   Between之间的操作实例.

来看看下面的sql语句操作实例.

select * from name where (number bewteen 1and 20)  and not Country("USA","中国")

 

8.带有文本的between操作的实例.

select * from student where name between 'A' and 'H'  

 

下面我们来学习下sql语句是如何实现多表查询的.来看看下面的代码.

在sql语句里面,我们将使用join方法来实现将将两个表或者是多个表的行结合起来的。

最常见的join类型就是:SQL  INNER JOIN  .从多个表里面返回满足条件的行.

在下一节,我们将重点看看多表查询。这个才是重点

 

 

 

 

 

 

 

 

7、T-SQL基础语句:深入理解SELECT与WHERE子句 本文深入讲解了T-SQL中SELECT语句和WHERE子句的基础用法,详细介绍了如何通过不同的运算符(如LIKE、BETWEEN、IN等)进行数据筛选,同时提供了多个实践示例和优化建议,帮助开发者高效地操作数据库。 阅读详情

相关推荐

Flowable第一篇、快速上手(Flowable安装、配置、集成)

Flowable是一个轻量级、高效可扩展的工作流和业务流程管理(BPM)引擎,支持在Java应用程序中实现复杂的工作流自动化。Flowable最初是作为Activiti项目的一个分支发展而来的,但它现在已经成为一个独立的开源项目,并在企业级应用中得到了广泛使用

Du_XiaoNan的博客 1万+

SQL通配符

SQL通配符 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。 SQL 通配符必须与 LIKE 运算符一起使用。 在 SQL 中,可使用以下通配符: 原始的表 (用在例子中的): Specialty表: 使用 % 通配符 现在,我们希望从上面的“Specialty”表中选取带有“7”的专业: 我们可以使用下面的 SELECT 语句: 结果集: 使用 _ 通配符 例子1 现在,我们希望从上面的 "

weixin_55243810的博客 9911

LightTools手动创建菲涅尔透镜的5个实用技巧(附详细步骤图)

本文详细介绍了在LightTools中手动创建菲涅尔透镜的5个核心技巧,包括理解旋转体与折线原理、高效构建多齿轮廓、编辑优化、坐标系定位以及属性设置与验证。通过分步图解和实用策略,帮助用户突破内置工具限制,实现对非标准齿形和复杂光学设计的完全掌控,提升建模精度与仿真效率。

onion的博客 774

数据库系统原理与应用教程(042)—— MySQL 查询(四):使用通配符构造查询条件

通配符

睿思达DBA 2113

黑暗中的爆破(船讯网Ais爬虫暨爬虫实战js逆向学习经验分享)

船讯网 爬虫 js逆向 python

returnadsss的博客 1575

LaMAR数据集下载和使用流程

LaMAR数据集

qq_51745206的博客 971

SQL 通配符

SQL 通配符 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。 SQL 通配符必须与 LIKE 运算符一起使用。 在 SQL 中,可使用以下通配符: 通配符 描述 % 替代一个或多个字符 _ 仅替代一个字符 [charlist] 字符列中的任何单一字符 [^charlist] 或者 [!charlist] 不在字符列中的任何单

KBKYBAN的专栏 1307

指纹浏览器指纹工厂(下):基于真实设备数据特征的马尔可夫链生成与校验

本文揭示了静态指纹生成算法在高级风控时序追踪下的致命缺陷,指出违背设备演进马尔可夫性质(如无状态跳跃、因果断裂)是导致指纹存活率骤降的核心原因。通过分析风控系统的时序状态机与多维特征验证机制,提出基于隐马尔可夫模型(HMM)的动态指纹架构:以真实设备的状态转移链为蓝本,构建异步演进的“数字基因熔炉”,通过非均匀时间步长、突发事件响应及微观因果绑定,模拟软硬件独立更新的物理法则。最终实现指纹在时间维度与微观特征上的自洽,规避风控的时序陷阱。

数据知道的博客 416

SQL 通配符

在SQL中,通配符是一种特殊字符,用于在LIKE子句中搜索数据。它们主要用于模式匹配,允许你搜索符合特定模式的值。SQL中的通配符通常用于SELECTUPDATE和DELETE语句中,以增加查询的灵活性。本文将详细介绍SQL中常用的通配符及其用法。

lly202406的博客 1933

【Claude Code】Not logged in 未登录错误解决方案 + /login 认证路径

Claude Code 启动时提示 Not logged in 表示当前会话缺少有效凭证。本文从环境变量、API Key 配置、CI 自动化凭证脚本和系统时钟四个维度,提供完整的认证排查流程与修复方案。

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程 892

【OCPP】ocpp1.6J协议框架说明

本文档的目的是为读者提供创建正确的可互操作 OCPP JSON 实现 (OCPP-J) 所需的信息。我们将根据我们自己的经验,尝试解释什么是强制性的、什么是良好做法以及什么是不应该做的。毫无疑问,误解或歧义仍然存在,但我们旨在通过本文件尽可能地防止它们。IANA:互联网数字分配机构(OCPP-J:使用JSON通过WebSocket进行OCPP通信。特定的OCPP版本应使用J扩展进行指示。OCPP1.5J表示我们正在讨论1.5版本的JSON/WebSocket实现。

qq_53871375的博客 1239

ParseURL, UrlLike, URL解析函数与匹配函数

// Url.h: interface for the Url class. // ////////////////////////////////////////////////////////////////////// #if !defined(_URL_H__)

杨小卫的专栏 1691

r3live 使用前提 雷达-相机外参标定 livox_camera_lidar_calibration

港科大livox_camera_calib虽然操作方便,但是使用mid360雷达会有视角问题(投影三维点到相机),尝试了很多场景,标定效果都不理想(推荐场景是楼梯间),看来港大的更适合avia之类窄角度的雷达。如果标定效果不好的话,就使用 getExt2节点,getExt1节点只优化外参,而getExt2节点在计算的时候会将一开始计算的内参作为初值和外参一起优化。一般使用getExt1节点即可,如果在外参初值验证过,并且异常值已经剔除后,优化还是有较大的残差,那么可以使用getExt2试一试。

z1872385的博客 2399

图文深入理解SQL语句的执行过程

在RDBMS(关系型DB)中,看似很简单的一条已写入DB内存的SQL语句执行过程却非常复杂,也就是说,你执行了一条诸如select count(*) where id = 001 from table_name的非常简单的语句,执行过程可能快的让你察觉不到耗时,但是就是这样一条简单的SQL语句,RDBMS在后台却为我们做了很多工作.

qq_45732829的博客 1863

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

深入理解SQL语句的执行顺序

SQL(Structured Query Language)是关系型数据库的标准查询语言,虽然语法结构看似线性排列,但实际执行顺序与书写顺序并不一致。不同数据库(如:MySQL、PostgreSQL、SQL Server、Oracle)虽然在语法细节和优化器实现上存在差异,但SQL语句实际执行顺序的基本逻辑一致。理解SQL语句在数据库内部的真实执行流程,对我们写出高效、正确、可维护的SQL查询语句非常重要。

qq_41924536的博客 623

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

深入理解 LINQ to SQL 生成的 SQL 语句

简介 在 C# 中与数据交互最常用的语句就是 LINQ 了,而 LINQ to SQL 是最直接与数据库打交道的语句,它可以根据 LINQ 语法生成对应的 SQL 语句,在数据库中去执行。本文主要研究什么样 LINQ 语句会生成什么样 SQL 语句,从而确保编写 LINQ 语句时,便知道该语句会执行什么样的 SQL 语句,得到什么结果,这是很有必要的。因为很多时候会考虑到 SQL 效率问题,和数据是否有误等问题。主要包括: 插入数据 判断记录是否存在 左连接情况下,判断某字段是否为 null 的

qq_47219637的博客 787

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

深入理解SQL中的TRUNCATE语句

相比于DELETE语句,TRUNCATE语句的执行速度更快。在大型表中,这种差异尤为明显,因为TRUNCATE可以快速释放存储空间并重新分配表空间,而DELETE则需要逐行操作,并且会生成大量的事务日志,导致性能下降。TRUNCATE语句是SQL中用于快速删除表中所有数据的命令,与DELETE语句相比,TRUNCATE通常执行速度更快且不记录删除操作,但不会触发触发器或返回删除的行数。TRUNCATE语句在执行时不会触发触发器,并且不记录删除的行数,因此执行速度通常比DELETE语句更快。

mxmps92893的博客 4403

深入理解实现分页的 SQL 语句

分页是数据库操作中常用的技术,不同数据库系统实现分页的 SQL 语句有所不同。MySQL 通过LIMIT子句简洁地实现分页;Oracle 借助ROWNUM伪列和子查询来达到目的;SQL Server 则有子句和函数两种常用方式。在实际应用中,需要根据所使用的数据库系统选择合适的分页方法,以提高数据查询的效率和应用程序的性能。希望本文对分页 SQL 语句的描述能帮助你在数据库开发中更好地处理分页需求。

AC的博客 976

深入理解 SQL 中的 Grouping Sets 语句

本文首先简单介绍 Grouping Sets 的用法,然后以 Spark SQL 作为切入点,深入解析 Grouping Sets 的实现机制

ruanrunxue的博客 6093

深入理解SQL语句执行过程

SQL语句执行过程详解一条sql,plsql的执行到底是怎样执行的呢?一、SQL语句执行原理:第一步:客户端把语句发给服务器端执行当我们在客户端执行 select 语句时,客户端会把这条 SQL 语句发送给服务器端,让服务器端的进程来处理这语句。也就是说,Oracle 客户端是不会做任何的操作,他的主要任务就是把客户端产生的一些 SQL 语句发送给服务器端。虽然在客户端也有一个数据库进程,但是,这...

weixin_30343157的博客 107

深入理解-SQL查询语句的执行流程

SQL查询语句的执行流程(以Oracle举例) 首先, 准备两张表 用户表user 角色表role 先来一个基本的查询语句 SELECT * FROM "user" u, "role" r WHERE u."rid" = r."rid"

YU_Cheng_Long的博客 1286

sql语句深入理解

[flash=200,200][/flash]SQL与ACCESS、EXCEL的导入导出 * 说明:复制表(只复制结构,源表名:a 新表名:b) select * into b from a where 11 * 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) insert into b(a, b, c) select d,e,f...

wyzxzws的专栏 137

SQL 中UPDATE 和 DELETE 语句的深入理解与应用

在 SQL 中,UPDATE和DELETE语句是用于操作表数据的重要工具,它们允许我们对已存在的数据进行修改和删除。

Nervousr的博客 3719

深入理解SQL语句中常出现的where 1=1

本文主要参考   http://bbs.youkuaiyun.com/topics/310082591 和 http://www.jb51.net/article/38062.htm 现在进入正题: 加入where 1=1,既是where 的条件成立,为永真,得到的结果就是未加约束条件的。为了动态SQL中连接and条件。 where后面总要有语句,加上了1=1后就可以保证语法不会出错!  假如后面确定

缎锦小妹的专栏 1463
上一篇: SQL语句基础入门基础讲解
下一篇: 如何是用jdbc技术来操作多条sql语句。
hackerbaseing
博客等级 码龄8年 19粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值