SQL like子查询

SQL like子查询like子查询字符匹配:%(百分号)任意字长度(可以为0)的字符_(下横线)代表任意单个字符eg:a%b表示以a开头,以b结尾的任意长度的字符。三个常用的字符串截取函数:substr(column,1,n)left(column,n)right(column,n)str=’abcdefg’substr(str,1,3):’bcd’left(s…

大家好,又见面了,我是你们的朋友全栈君。

like子查询

字符匹配:

  • % (百分号)任意字长度(可以为0)的字符
  • _(下横线)代表任意单个字符

    eg:a%b表示以a开头,以b结尾的任意长度的字符。

三个常用的字符串截取函数:

  • substr(column,1,n)
  • left(column,n)
  • right(column,n)
str='abcdefg'
substr(str,1,3): 'bcd'
left(str,2): 'ab'
right(str,2) : 'fg'

下面举一个城市匹配的例子
表job_provinces结构

CREATE TABLE `job_provinces` ( `id` int(11) NOT NULL AUTO_INCREMENT, `code` int(11) NOT NULL, `name` varchar(50) NOT NULL, PRIMARY KEY (`id`) )CHARSET=utf8

表provinces结构

CREATE TABLE `provinces` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(11) DEFAULT NULL, PRIMARY KEY (`id`) ) CHARSET=utf8

现在从job_provinces中查找与provinces对应编号为1的省份的的code值

SELECT a.code from job_provinces a WHERE LEFT(a.name,2) LIKE LEFT((SELECT name from provinces WHERE id = 1),2)

同样可以定义存储过程来完成数据更改

BEGIN declare i int;
    set i=1;
    while i<35 do UPDATE univs set pid = (SELECT a.code from job_provinces a WHERE LEFT(a.name,2) LIKE LEFT((SELECT name from provinces WHERE id = i),2) ) WHERE pid = i;
         set i=i+1;
    end while;
END
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158829.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • you are not allowed to_BlankBlood

    you are not allowed to_BlankBloodisNotEmpty:判断某字符串是否非空StringUtils.isNotEmpty(null)=falseStringUtils.isNotEmpty(“”)=falseStringUtils.isNotEmpty(“”)=trueStringUtils.isNotEmpty(“bob”)=trueisNotBlank:判断某字符串是否不为空且长度不为0且不

    2022年8月12日
    10
  • hivesql导出本地文件

    hivesql导出本地文件

    2021年11月27日
    40
  • C++ 序列化和反序列化

    C++ 序列化和反序列化序列化序列化1、背景2、定义3、序列化评价指标4、序列化实例参考序列化1、背景1、在TCP的连接上,它传输数据的基本形式就是二进制流,也就是一段一段的1和0。2、在一般编程语言或者网络框架提供的API中,传输数据的基本形式是字节,也就是Byte。一个字节就是8个二进制位,8个Bit。二进制流和字节流本质上是一样的。对于我们编写的程序来说,它需要通过网络传输的数据是结构化的数据,比如,一条命令、一段文本或者一条消息。对应代码中,这些结构化的数据都可以用一个类或者一个结构体来表示。序

    2022年6月17日
    24
  • ESP8266学习笔记1:怎样在安信可全功能測试板上实现ESP-01的编译下载和调试[通俗易懂]

    ESP8266学习笔记1:怎样在安信可全功能測试板上实现ESP-01的编译下载和调试

    2022年1月22日
    41
  • [linux] sshd_config 打开PermitRootLogin

    [linux] sshd_config 打开PermitRootLogin允许root用户远程登录vim/etc/ssh/sshd_configPermitRootLoginyes允许无密码登录1)将PermitEmptyPasswordsyes前面的#号去掉2)将PermitEmptyPasswords参数值修改为yesservicesshdrestart

    2022年5月1日
    105
  • Android入门学习教程PDF免费下载

    Android入门学习教程PDF免费下载场景Android(安卓)是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。2005年由Google收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。实现关注公众号:霸道的程序猿回复:Android书籍免费下载。…

    2022年5月10日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号