• ADADADADAD

    sql 一个字段是否包含另一个字段[ mysql数据库 ]

    mysql数据库 时间:2024-12-03 12:13:13

    作者:文/会员上传

    简介:

    /*NavicatMySQLDataTransferSourceServer:testSourceServerVersion:50528SourceHost:localhost:3306SourceDatabase:testTargetServerType:MYSQLTargetServerVersion:50528F

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    /*NavicatMySQLDataTransferSourceServer:testSourceServerVersion:50528SourceHost:localhost:3306SourceDatabase:testTargetServerType:MYSQLTargetServerVersion:50528FileEncoding:65001Date:2015-03-1311:25:34*/SETFOREIGN_KEY_CHECKS=0;--------------------------------Tablestructureforqueryreptycode------------------------------DROPTABLEIFEXISTS`queryreptycode`;CREATETABLE`queryreptycode`(`id`int(11)NOTNULL,`code`varchar(50)DEFAULTNULL,`codeRepty`varchar(50)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8;--------------------------------Recordsofqueryreptycode------------------------------INSERTINTO`queryreptycode`VALUES('1','1','1');INSERTINTO`queryreptycode`VALUES('2','2','2;3;4;1;');INSERTINTO`queryreptycode`VALUES('3','3','1;');

    数据为:

    selectDISTINCTQ1.id,Q1.code,Q1.codeReptyfromqueryreptycodeasQ1INNERJOINqueryreptycodeasQ2whereINSTR(Q1.`code`,'%'+Q2.codeRepty+'%')

    原理:

    函数INSTR会告诉用户,其中的一个字符串(参数)是否在另一个字符串(也是参数)当中。
    其具体的语法格式如下:
    INSTR(string,substring[,start[,occurrence]])
    其中:
    string待查询的字符串
    substring正在搜索的字符串
    start说明开始搜索的字符位置。默认值是1,就是说,搜索将从字符串的第一个字符开始。如果,参数为负则表示搜索的位置从右边开始计算,而不是默认的从左边开始
    occurrence指定试图搜索的子串的第几次出现,默认值是1,意味着希望其首次出现
    该函数反馈一索引顺序值,在该位置发现了要搜索的子串。下面的例子指出了INSTR函数的使用情况:
    INSTR(‘AAABAABA’,’B’)=4
    INSTR(‘AAABAABA’,’B’,1,2)=7

    sql 一个字段是否包含另一个字段.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载