SQL 类似 - SQL 不类似

2023-11-16

SQL LIKE 与 WHERE 子句一起使用来搜索列的模式。通配符是用于指定模式的通配符。有两个通配符与 LIKE 运算符一起使用。

  1. %:用百分比来表示一次、多次或不出现的情况。
  2. _:下划线用于表示单个字符。

sql like operator To use SQL LIKE operator, we must be very sure of the usage of the wildcard position as that will define the search pattern.

SQL 类似语法

SQL Like 运算符可与任何查询一起使用where 子句。所以我们可以使用它Select, Delete, Update etc.

SELECT column FROM table_name WHERE column LIKE pattern;

UPDATE table_name SET column=value WHERE column LIKE pattern;

DELETE FROM table_name WHERE column LIKE pattern;

In the sql与上面提到的语法类似,“模式”是通过使用通配符定义的模式。

SQL 类似示例

让我们尝试通过一些示例来了解 SQL LIKE 语句和通配符的用法。请考虑以下 Customer 表作为示例。

CustomerId CustomerName
1 Amit
2 John
3 Annie
  1. 查找名称以“A”开头的客户名称。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE 'A%';
    

    Output:阿米特·安妮

  2. 查找名称以“e”结尾的客户姓名。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE '%e'
    

    Output: Annie

  3. 查找名称以“A”开头并以“t”结尾的客户名称。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE 'A%t'
    

    Output: Amit

  4. 查找姓名任意位置包含“n”的客户名称。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE '%n%'
    

    输出:安妮·约翰

  5. 查找名称第二位包含“n”的客户名称。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE '_n%'
    

    Output: Annie

  6. 查找名称第三位包含“i”且以“t”结尾的客户名称。

    SELECT CustomerName FROM Customer WHERE CustomerName LIKE '__i%t'
    

    Output: Amit

SQL 不喜欢

有时我们想要获取与相似模式不匹配的记录。在这种情况下,我们可以使用 sql not like 运算符。 SQL 不像语句语法,如下所示。

SELECT column FROM table_name WHERE column NOT LIKE pattern;

UPDATE table_name SET column=value WHERE column NOT LIKE pattern;

DELETE FROM table_name WHERE column NOT LIKE pattern;

举个例子,假设我们想要不以“A”开头的客户名称列表。下面的查询将为我们提供所需的结果集。

SELECT CustomerName FROM Customer WHERE CustomerName NOT LIKE 'A%';

Output: John

SQL 多个 Like

SQL 查询中可以有多个 like 语句。例如,如果我们想要一个以“Jo”和“Am”开头的客户名称列表,那么我们将不得不使用多个类似的语句,如下所示。

SELECT CustomerName FROM Customer WHERE CustomerName LIKE 'Am%' OR CustomerName LIKE 'Jo%';

这就是 SQL like 运算符和 SQL not like 运算符示例的全部内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL 类似 - SQL 不类似 的相关文章

  • 为什么我们不能有多个主键?

    我知道表中不能有超过 1 个主键 但技术原因是什么 直接拉取自SO https stackoverflow com questions 217945 can i have multiple primary keys in a single
  • SQL:比较不同表中的两个计数

    我有 3 张桌子 一张桌子上有世界上每个国家及其代币 NAME CODE Afghanistan AFG Albania AL Algeria DZ American Samoa AMSA Andorra AND Angola ANG An
  • 为什么 sql 字段名称中不应该包含逗号?

    人们一直告诉我列名中不应包含空格 我只是想知道 这是为什么 这是我为学校创建的一些数据库表遇到的问题 字段名称包括 Preble 和 Darke 相反 它们需要是 普雷布尔县 俄亥俄州 和 达克县 俄亥俄州 如果它们是行名称 我只需创建一个
  • 混合语言源目录布局

    我们正在运行一个使用多种不同语言的大型项目 Java Python PHP SQL 和 Perl 到目前为止 人们一直在自己的私有存储库中工作 但现在我们希望将整个项目合并到一个存储库中 现在的问题是 目录结构应该是什么样的 我们应该为每种
  • 如何在没有 EF 的 ASP.NET MVC 中使用普通 sql?

    我有一个使用 linq to sql 的类 如何在 ASP NET MVC 3 中使用普通 sql 而不使用 EF 来实现相同的功能 public ActionResult Index var List from c in db OFFIC
  • 返回行位置 - Postgres

    我返回一个带有位置的表 select from select row number over as position from organization result where data1 Hello 返回这个 这是正确的 data1 H
  • 仅当变量不为空时 SQL 添加过滤器

    您好 我有疑问如下 SELECT route id ROUTE ID FROM route master NOLOCK WHERE route ou 2 AND route query l s query AND lang id 1 这里
  • MySQL 子查询返回多行

    我正在执行这个查询 SELECT voterfile county Name voterfile precienct PREC ID voterfile precienct Name COUNT SELECT voterfile voter
  • 具有 LINQ 支持的最完整的 ORM?

    我正在寻找一个提供完整或接近完整的 LINQ 支持的 ORM LINQ 到 SQL 支持 LINQ 内部的所有内容 Contains Math Log 等 在不创建新数据上下文的情况下无法预先加载关系属性 ADO NET 实体框架 糟糕的
  • 如何将自定义类型数组传递给 Postgres 函数

    我有一个自定义类型 CREATE TYPE mytype as id uuid amount numeric 13 4 我想将它传递给具有以下签名的函数 CREATE FUNCTION myschema myfunction id uuid
  • 使用MySQL计算单个表中借方和贷方的余额

    下面的 MySQL 表包含带有关联金额的借方或贷方 操作 如何选择具有非零 余额 的所有 CLIENT ID 我尝试将表连接到自身以计算所有借方和贷方总额 但有些东西无法正常工作 CLIENT ID ACTION TYPE ACTION A
  • SQL Server 相当于 MySQL 的 USING

    在 MySQL 中 当您连接不同表中具有相同名称的列时 可以在连接中使用关键字 USING 例如 这些查询产生相同的结果 SELECT FROM user INNER JOIN perm USING uid SELECT FROM user
  • 在存储过程结束时显式删除本地临时表有什么好处?

    考虑以下伪 T SQL 代码 由存储过程执行 CREATE TABLE localTable
  • 外键引用多个表

    我有4张桌子 A ida name B ida B specific stuff C ida C specific stuff D ida D specific stuff 我希望另一个表 E 可以仅引用 B 或 C 而不是 D 我可以在其
  • 通过将行旋转为动态数量的列来在 MySQL 中创建摘要视图

    我在 MySQL 中有一个表 其中包含以下字段 id company name year state 同一客户和年份有多行 以下是数据示例 id company name year state 1 companyA 2008 1 2 com
  • 与 FOREIGN KEY 约束冲突

    我有两张桌子 学术界 CREATE TABLE dbo R ACADEMIE ID ACADEMIE dbo IDENTIFIANT NOT NULL LC ACADEMIE CODE dbo LIBELLE COURT NOT NULL
  • SQL Server递归查询显示父级路径

    我正在使用 SQL Server 语句并有一张表 例如 item value parentItem 1 2test 2 2 3test 3 3 4test 4 5 1test 1 6 3test 3 7 2test 2 我想使用 SQL S
  • 如何对 SQL Server Express 进行实时更改

    我一直在使用 VS studio 开发一个 ASP NET Web 应用程序 我正在使用 SQL Server Express 在开发过程中 我一直在我的服务器上测试我的网络应用程序 每次我需要更新数据库时 我都会简单地删除旧数据库 位于我
  • SQLite 条件 ORDER BY 中的 DESC

    我需要选择按以下逻辑排序的记录 但是当 DESC 处于条件中时 SQLite 会引发错误 ORDER BY CASE WHEN parentGUID IS NULL THEN datePosted DESC ELSE datePosted
  • MySQL 中的 group_concat 性能问题

    我添加了一个group concat到一个查询并杀死了性能 添加之前和之后的解释计划是相同的 所以我对如何优化它感到困惑 这是查询的简化版本 SELECT curRow curRow 1 AS row number docID docTyp

随机推荐

  • 在 Debian 9 上使用 Let's Encrypt 保护 Apache

    Let s Encrypt 是由互联网安全研究小组 ISRG 创建的证书颁发机构 它通过完全自动化的流程提供免费的 SSL 证书 旨在消除手动证书创建 验证 安装和续订 Let s Encrypt 颁发的证书自颁发之日起 90 天内有效 并
  • 如何在 Ubuntu 18.04 上安装 Tor 浏览器

    Tor 浏览器通过 Tor 网络路由您的网络流量 使其私密且匿名 当您使用 Tor 浏览器时 您正在查看的网站的连接会被加密并免受网络监视和流量分析 使用 Tor 浏览器有一些缺点 通过 Tor 浏览网络比常规互联网连接慢 并且一些主要网站
  • 如何在 CentOS 7 上安装 MongoDB

    MongoDB 是一个免费的开源文档数据库 它被归类为 NoSQL 数据库 与 MySQL 和 PostgreSQL 等传统的基于表的 SQL 数据库不同 在 MongoDB 中 数据存储在灵活的 类似 JSON 的文档中 其中字段可能因文
  • ​如何升级到Ubuntu 20.04

    Ubuntu 20 04 LTS Focal Fossa 于2020年4月23日发布 支持五年 它附带了大量新软件包和主要软件升级 包括最新版本的 OpenJDK GCC Python Ruby 和 PHP 该版本基于 Linux 5 4
  • 如何设置 SSH 隧道(端口转发)

    SSH 隧道或 SSH 端口转发是一种在客户端和服务器计算机之间创建加密 SSH 连接的方法 通过该连接可以中继服务端口 SSH 转发对于传输使用未加密协议的服务的网络数据非常有用 例如 VNC 或FTP 访问地理限制的内容或绕过中间防火墙
  • Linux 中的较少命令

    Less 是一个命令行实用程序 一次一页显示文件内容或命令输出 它类似于more 但具有更高级的功能 并允许您在文件中向前和向后导航 启动时less不读取整个文件 与诸如此类的文本编辑器相比 加载时间要快得多vim or nano The
  • 如何在 CentOS 7 上安装更新

    让您的 CentOS 系统保持最新的安全更新是整体系统安全最重要的部分之一 如果您不使用最新的安全补丁更新操作系统的软件包 您的计算机将容易受到攻击 推荐的方法是使用 yum cron 自动更新 另一种选择是手动更新系统 在本教程中 我们将
  • 如何在 Debian Linux 10 Linux 上安装 VirtualBox

    虚拟盒子是一款开源跨平台虚拟化软件 允许您同时运行多个来宾操作系统 虚拟机 本教程介绍如何在 Debian 10 Buster 上安装最新的 VirtualBox 先决条件 为了能够在 Debian 上安装软件包 您需要以具有 sudo 权
  • Linux 中的 Cd 命令(更改目录)

    The cd 更改目录 命令用于更改 Linux 和其他类 Unix 操作系统中的当前工作目录 它是在 Linux 终端上工作时最基本 最常用的命令之一 The 当前工作目录是用户当前正在其中工作的目录 文件夹 每次与命令提示符交互时 您都
  • 如何在 Debian 9 上安装 Plex 媒体服务器

    Plex 是一款流媒体服务器 可让您组织视频 音乐和照片收藏 并将它们随时随地流式传输到您的所有设备 本教程介绍了如何安装Plex 媒体服务器在 Debian 9 上 先决条件 您登录时必须拥有的用户须藤权限能够安装软件包 安装 Plex
  • 如何在 CentOS 7 上安装 Vagrant

    Vagrant是一个用于构建和管理虚拟机环境的开源命令行工具 默认情况下 Vagrant 可以在 VirtualBox Hyper V 和 Docker 之上配置计算机 其他提供商如 Libvirt KVM VMware 和 AWS 可以通
  • 如何在 Ubuntu 18.04 上安装和配置 Redis

    Redis 是一个开源的内存数据结构存储 它可以用作数据库 缓存和消息代理 并支持各种数据结构 如字符串 哈希 列表 集合等 Redis 通过 Redis Sentinel 提供高可用性 包括监控 通知 自动故障转移 它还通过 Redis
  • 如何在 Ubuntu 18.04 上安装 IntelliJ IDEA

    智能IDEA是一个功能齐全的 IDEJVM和安卓开发 它具有内置的调试支持 Docker and Docker 组合支持 嵌入式Git控制 集成了主要的构建自动化工具 例如Maven and Gradle 语法高亮 代码完成 ssh终端 代
  • 如何在 Debian 9 上安装 Tomcat 8.5

    Apache Tomcat 是一个开源应用程序服务器 支持 Java Servlet JavaServer Pages Java 表达式语言和 Java WebSocket 技术 它是当今世界上使用最广泛的应用程序和 Web 服务器之一 本
  • Linux 中的命令

    at是一个命令行实用程序 允许您安排在特定时间执行的命令 创建的职位at仅执行一次 在这篇文章中 我们将解释如何使用at及其配套实用程序batch atq atrm查看 删除和创建稍后执行的作业 安装中at 根据分布情况 at您的 Linu
  • 如何在 Ubuntu 18.04 上安装 Webmin

    Webmin是一个用于 Linux UNIX 系统管理的开源 Web 控制面板 Webmin 允许您管理用户 组 磁盘配额以及配置最流行的服务 包括 Web FTP 电子邮件和数据库服务器 在本教程中 我们将向您展示如何在 Ubuntu 1
  • 如何在 Ubuntu 20.04 上安装 Nvidia 驱动程序

    本文介绍如何在 Ubuntu 20 04 上安装 NVIDIA 驱动程序 如果您的 Ubuntu 机器有 NVIDIA GPU 您可以选择开源驱动程序Nouveau以及 NVIDIA 的专有驱动程序 默认情况下 Ubuntu 使用 Nouv
  • 如何列出和删除 UFW 防火墙规则

    UFW 代表简单防火墙 是一个用户友好的前端 用于管理 iptables netfilter 防火墙规则 它是默认的防火墙配置工具Ubuntu并且也可用于其他流行的 Linux 发行版 例如Debian和 Arch Linux 在本教程中
  • 如何在 Vue.js 中使用样式和类绑定

    介绍 在本文中 您将了解 Vue js 中的动态样式和类绑定 随着v bind style指令 您将在单击事件上可视化字体大小 和v bind class 您将观察如何将多个类应用于元素 虽然这可以通过 DOM 操作实现 但 Vue js
  • SQL 类似 - SQL 不类似

    SQL LIKE 与 WHERE 子句一起使用来搜索列的模式 通配符是用于指定模式的通配符 有两个通配符与 LIKE 运算符一起使用 用百分比来表示一次 多次或不出现的情况 下划线用于表示单个字符 To use SQL LIKE opera