精华内容
下载资源
问答
  • like sql 多个关键词
    千次阅读
    2021-06-17 09:51:01

    模糊查询同一个字段的多个关键词,如果这么写会比较麻烦
     

    select * from test where  city  like "%210212%" or city  like "%210203%"
    

    可以换成正则

    select * from testwhere city regexp'210212|210283|210203|.......';
    

    其中引号里面是正则表达式,可以根据自己需求编写

    更多相关内容
  • mysql: SELECT xx from tableName where xxREGEXP '小红|小蓝|小黄|小紫' sqlserver: SELECT xx from tableName where xx like '%[小红|小蓝|小黄|小紫]%'

    mysql:

    SELECT    xx     from    tableName    where    xx   REGEXP    '小红|小蓝|小黄|小紫'

    sqlserver:

    SELECT    xx    from    tableName    where    xx    like    '%[小红|小蓝|小黄|小紫]%'

    展开全文
  • mysql like多个关键字

    千次阅读 2021-03-05 09:44:23
    mysql like多个关键字 regexp select * from pep where name regexp ‘小|大|双’; 总结: 字段名 regexp '值1|值2|值3|值4……'

    mysql like多个关键字

    regexp


    在这里插入图片描述
    select * from pep where name regexp ‘小|大|双’;

    在这里插入图片描述
    总结:

    字段名 regexp '值1|值2|值3|值4……'


    查看oracle like多个关键字

    展开全文
  • sql 多个模糊查询优化

    千次阅读 2021-02-03 17:42:08
    按主题和品牌这些即有的筛选就不说了,今天把我的摸索过程整理一下,说说如何用 MySQL 实现多关键词站内“模糊查找”。拿一简化的小表儿做例子表名叫:article字段有:title、subtitle、tag、text……涉及到查找的...

    目前在做“Brick4.com - 国产积木索引表”这个小工具。它是当作“工具书”而存在的,必然需要一个靠谱的检索功能。按主题和品牌这些即有的筛选就不说了,今天把我的摸索过程整理一下,说说如何用 MySQL 实现多关键词站内“模糊查找”。

    拿一个简化的小表儿做例子

    表名叫:article

    字段有:title、subtitle、tag、text……

    涉及到查找的字段有三个:title、subtitle、tag

    像我这种初学者,首先想到的肯定是 LIKE ,关键词是“车”的话,就这样:

    SELECT * FROM article WHERE

    title LIKE "%车%"

    OR subtitle LIKE "%车%"

    OR tag LIKE "%车%"

    怎么样?LIKE 是万能的,用一个 LIKE 解决不了的事情就多用几个 LIKE 。于是多关键词就这样搞:

    SELECT * FROM article WHERE

    (

    title LIKE "%车%"

    OR subtitle LIKE "%车%"

    OR tag LIKE "%车%"

    ) OR (

    title LIKE "%摩托%"

    OR subtitle LIKE "%摩托%"

    OR tag LIKE "%摩托%"

    ) OR (

    title LIKE "%红色%"

    OR subtitle LIKE "%红色%"

    OR tag LIKE "%红色%"

    ) OR (

    title LIKE "%美国%"

    OR subtitle LIKE "%美国%"

    OR tag LIKE "%美国%"

    ) OR (

    title LIKE "%2006%"

    OR subtitle LIKE "%2006%"

    OR tag LIKE "%2006%"

    )

    虽然很工整,不过能不能简洁一点?当然行!看我变形!我们可以用正则:

    SELECT * FROM article WHERE

    title REGEXP "车|摩托|红色|美国|2006"

    OR subtitle REGEXP "车|摩托|红色|美国|2006"

    OR tag REGEXP "车|摩托|红色|美国|2006"

    怎么样?意外不意外?惊喜不惊喜?其实咱们还可以更进一步,把几个字段合并起来:

    SELECT * FROM article WHERE

    CONCAT_WS(" ", title, subtitle, tag) REGEXP "车|摩托|红色|美国|2006"

    这一句话,和前面洋洋洒洒那一大坨是等同的。

    之所以用 CONCAT_WS() 而不是 CONCAT() ,是因为后者在某字段为 NULL 的情况下会导致合并结果为 NULL,万无一失嘛,我们用前者。

    要求不高的话,到这其实就可以了。但是总感觉找到的文章似有关联又东一榔头西一杵,所以咱们要排序。我希望“按照匹配关键词的多寡来排序”,匹配关键词越多的文章越靠前,咋办呢?

    SELECT *,

    (

    (IF( CONCAT_WS(" ", title, subtitle, tag) LIKE "%车%", 1, 0))

    + (IF( CONCAT_WS(" ", title, subtitle, tag) LIKE "%摩托%", 1, 0))

    + (IF( CONCAT_WS(" ", title, subtitle, tag) LIKE "%红色%", 1, 0))

    + (IF( CONCAT_WS(" ", title, subtitle, tag) LIKE "%美国%", 1, 0))

    + (IF( CONCAT_WS(" ", title, subtitle, tag) LIKE "%2006%", 1, 0))

    ) AS keyweight

    FROM article WHERE

    CONCAT_WS(" ", title, subtitle, tag) REGEXP "车|摩托|红色|美国|2006"

    ORDER BY keyweight DESC

    “通过一组关键词站内模糊搜索,按照匹配关键词的多寡来排序。”这个需求,目标达成!撒花撒花~

    最终的语句扔在这里,相信你一看就懂了。关键是思路,我可是沥沥拉拉摸索了好几天啊……

    在今天的例子里 title、subtitle、tag 三个字段同等重要,所以直接合并起来,如果你希望有权重的概念,比如 主标题 大于 副标题 大于 标签,思考一下,其实也不复杂。

    最后再打个广告:Brick4.com - 最实用的国产积木索引表 更好用了!感兴趣的小伙伴快来支持一下!!

    2017-09-13 更新

    发现 Brick4 搜索的关键词开始区分大小写了。探究源头是因为最近把一个数据类型为 INT 的字段纳入了检索,区分大小写正是因此造成的。

    举个例子,比如 time 的数据类型是数字,title 是文本,直接这样写就会区分大小写:

    SELECT * FROM article WHERE

    CONCAT_WS("", time, title) REGEXP "关键词"

    要是把数字转成字符串再拼合就没事了:

    SELECT * FROM article WHERE

    CONCAT_WS("", CHAR(time), title) REGEXP "关键词"

    上述转自:

    http://lao.si/120============================================================================

    展开全文
  • 产生问题:此前的工作中,查看是否命中关键词,大多采用LIKE或RLIKE函数。假设以【淘宝 OR 京东 OR 拼多多】为关键词,通常采用SELECT XXX, XXX, XXX(想要输出的字段名)FROM 表名WHERE 字符串字段名 RLIKE '淘宝|...
  • SELECT * FROM table WHERE name like concat('%',@var,'%') or zip like concat('%',@var,'%') or city like concat('%',@var,'%'); 您也可以使用regualar表达式。 例如输入字符串the day boss get Hitesh> select...
  • tp5 空格拆分关键词,多个关键词进行查询 $data['keyword'] = preg_replace("/\s+/",' ',$data['keyword']);//所有空格替换成一个空格 $keyarr=explode(' ',$data['keyword']);//以空格拆分成数组 $whereSql = ''...
  • 字段like多个条件(or关系)简写

    千次阅读 2021-01-27 07:33:17
    字段 like ‘匹配串1’or 字段 like ‘匹配串2’or ... 有如下简写方式oracle:select * from tablex whereREGEXP_LIKE(字段名, '(匹配串1|匹配串2|...)') ;//全模糊匹配select * from tablex whereREGEXP_LIKE(字段...
  • sqlsever:like关键字讲解
  • oracle里like多个关键字(regexp_like)

    千次阅读 2021-03-03 17:43:48
    oracle里like多个关键字 [regexp_like] 查询name多个关键字匹配的人: 汉、雷、范、奇、尚 regexp_like(字段名,'值1|值2|值3|值4|值5……') //全模糊匹配 regexp_like(字段名,'^(值1|值2|值3|值4|值5……)') //右...
  • 数据库sql语句关键词大全,基本你能知道这几个关键词,基本就知道该如何写了(超简略)
  • 比如我有个SQL语句如下:SELECT `id`, `subject`FROM `glfr_article`WHERE (1 = 1AND `subject` LIKE '%电子商城%'AND `subject` LIKE '%php%')ORDER BY `point_num` DESC, `id` DESC`现在的结果是 php 的结果很,...
  • 如果同时搜索多个关键词,可以使用union子句来将搜索结果合并起来。以下代码实现了一个搜索页面。 引用 <?php require_once(''Connections/conn.php''); ?> <?php $colname_rs = $_GET[''key'']; //获得...
  • 在试题的问题和四个选项多个字段中查找关键词获得相应记录。且在后端查找函数中使用预编译语句。
  • 如果同时搜索多个关键词,可以使用union子句来将搜索结果合并起来。以下代码实现了一个搜索页面。引用?>$colname_rs = $_GET[''key'']; //获得用户输入$result =explode('','',$_GET[''key'']);//分解用户输入的...
  • 2020-07-11 03:35:12PHP实现多个关键词查询的方法:1、使用SQL语句中的like子句对数据库的搜索;2、同时搜索多个关键词,使用union子句来将搜索结果合并起来即可。PHP实现多个关键词查询的方法:PHP对于数据库的搜索...
  • sql中单字段模糊查询多个匹配字段

    千次阅读 2021-01-04 18:19:47
    方式一 ...post_code like '%u%' or post_code like '%r%' 方式二 使用union select * from sys_post where post_code like '%u%' union select * from sys_post where post_code like '%r%' ...
  • sql多关键词模糊查询

    千次阅读 2013-12-20 21:07:55
    select * from 表名 where zlyt like '%b%' or zlyt like '%f%' 如果是查询zlyt中含有b和f可以这样写: select * from 表名 where zlyt like '%b%f%' or zlyt like '%f%b%'; 不同的是先后顺序,根据你的情况自己可能...
  • tp6一个字段查询多个like条件
  • sql语句中的关键词

    2020-04-07 11:22:21
    之前写sql时明明有更好的方式没有使用,在后面的使用过程中,发现了自己多么傻逼,下面统计一下比较使用的高级sql查询 高级sql查询 关键词 说明 使用例句 BETWEEN 操作符 BETWEEN ... AND 会选取介于...
  • SQL字段模糊匹配关键字查询”

    千次阅读 2018-05-15 10:38:48
    转载自:...通常,程序员会每字段都在SQL中“field like'%cond%'”一次。这样,SQL语句会长得惊人,碰上复杂一点的,甚至SQL语句会因为超长而被数据库拒绝执行。其...
  • 1、常见的SQL查询 -- 常见SQL查询 select id,name,type,tag,status,'A' tablename from TABLEONE -- 或者 SELECT * FROM TABLEONE;(SELECT A.* FROM TABLEONE A); -- 常见条件查询 select id,name,type,tag,...
  • #匹配任意一字符串 正则表达式查询 select * from book where book_name regexp ‘^php’; 字符串开头 regexp ‘php$’; 字符串结尾 regexp ‘p.’; #匹配任意一字符 regexp ‘[abc]’; ...
  • sql模糊查询查询多个关键字

    千次阅读 2017-06-28 10:47:17
    可以用or或者and关键字连接多个条件:select * from usertable t where t.name like %zhang% and t.mobile like %135555% or t.age like 2%
  • SQL查询常用关键词

    千次阅读 2019-07-19 14:09:55
    and or 逻辑运算,where 后多个条件中间连接用 not 逻辑源算,where 后,条件前用 % 任意多个字符 — 任意一个字符 like 模糊查询:where name like ‘张__’ in(‘范围1’,‘范围2’,…) 范围查询:where ...
  • SQLLIKE模糊查询LIKE关键字匹配语句

    千次阅读 2016-09-08 23:38:13
    表示零个或者多个任意字符 _ 代表一个任意字符(必须有一个字符) [] 类似Linux正则表达式,表示括号内的字符范围 [^] 类似Linux正则表达式...
  • 之前遇到一个棘手的Linq to EF查询的技术问题,现有产品表Product,需要根据多个关键字模糊匹配产品名称, 现将解决方案分享出来。 问题描述 根据需求,我们需要编写如下的SQL语句来查询产品 代码如下: select * ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,218
精华内容 7,687
关键字:

like sql 多个关键词