mysql搜索多表多字段模糊查询

select parttime_job_business_assessments.*, u.nick_name, u.mobile, pj.name as job_name, b.name as business_name from `parttime_job_business_assessments`
left join `users` as `u` on `u`.`id` = `parttime_job_business_assessments`.`user_id`
left join `parttime_jobs` as `pj` on `pj`.`id` = `parttime_job_business_assessments`.`job_id`
left join `businesses` as `b` on `b`.`id` = `parttime_job_business_assessments`.`business_id`
where 1 = 1
AND concat(pj.`name`, u.`nick_name`,u.`mobile`,b.`name`) LIKE "%郝%"
order by `parttime_job_business_assessments`.`sort_id` desc
limit 10 offset 0
————————————————
版权声明:本文为CSDN博主「Yietion」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u010496966/article/details/83818268

当搜索某一关键词的时候,要查询多个表的字段是否包含该关键字,这个时候可以使用:

concat(表1.字段1, 表二.字段二......) LIKE "%关键词%"
上例为查询“郝“关键词,可以是users表的nick_name和mobile字段,也可以是parttime_jobs表的name字段,同时还可以是businesses的name字段
————————————————
版权声明:本文为CSDN博主「Yietion」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u010496966/article/details/83818268

原文地址:https://www.cnblogs.com/gaogaoxingxing/p/12401996.html

时间: 2024-10-27 00:02:36

mysql搜索多表多字段模糊查询的相关文章

MySQL单表多字段模糊查询解决方法

在最近的一个项目需要实现在单表中对多字段进行多个关键字的模糊查询,但这数个关键字并不一定都存在于某个字段 例如现有table表,其中有title,tag,description三个字段,分别记录一条资料的标题,标签和介绍.然后根据用户输入的查询请求,将输入的字串通过空格分割为多个关键字,再在这三个字段中查询包含这些关键字的记录. 可目前遇到的问题是,这些关键字是可能存在于三个字段中的任意一个或者多个,但又要求三个字段必须包含所有的关键词.如果分别对每个字段进行模糊匹配,是没法实现所需的要求,由此

Mybatis mysql 一个搜索框多个字段模糊查询 OR

根据搜索框给定的关键词,模糊搜索用户名和账号都匹配的用户集合 <select id="list" parameterType="com.user.UserInfo" resultType="com.user.UserInfo"> SELECT * FROM user WHERE 1 = 1 <if test="searchParam != null and searchParam != ''"> AND

Oracle group by 多表多字段关联查询

group by 多表多字段关联查询 自己遇到一个问题,就是开始的时候需要一个字段的名字和数量,但是是同个一个表的. 数据库代码如下: select  l.batchnum,count(l.batchnum) batcount    from ts_outphone_list l join ts_outphone_batch b on l.batchnum=b.batchnum left join om_user_list om on l.datamanager=om.login_id left

MySQL中大数据表增加字段,通过增加索引实现

MySQL中大数据表增加字段,通过增加索引实现 普通的添加字段sql ALTER TABLE `table_name` ADD COLUMN `num` int(10) NOT NULL DEFAULT 0 AFTER `addtime`; 普通的添加索引sql ALTER TABLE `table_name` ADD INDEX `num` (`num`) ; 但是线上的一张表如果数据量很大呢,执行加字段操作就会锁表,这个过程可能需要很长时间甚至导致服务崩溃,那么这样操作就很有风险了. 在网上

MySQL用户、[表库字段]权限、管理及查询缓存详解

MySQL用户管理: mysql> help contents; You asked for help about help category: "Contents" For more information, type 'help <item>', where <item> is one of the following categories:    Account Management    Administration    Compound Sta

第二阶段 MySQL函数库 表的修改与查询

一.表结构的修改(DDL) 1.添加表结构的字段 a.ALTER TABLE 表名 ADD 字段名 数据类型 [字段属性|约束条件] [FIRST|AFTER 字段名]: b. 添加多个字段 ALTER TABLE 表名 ADD 字段名 数据类型 [字段属性|约束条件] [FIRST|AFTER 字段名], ADD 字段名 数据类型 [字段属性|约束条件] [FIRST|AFTER 字段名]...: 2 删除字段 ALTER TABLE 表名 DROP 字段名, DROP 字段名...; 3.修

mysql数据库、表、字段、记录:增、删、改、查

数据库.表.字段.记录:增.删.改.查.分类进行学习,重点是查询. /* 数据库.表.字段.记录:增.删.改.查 */ -- 1.数据库:增删改查 create datebase if not exists jkxy; drop database if exists jkxy; rename database jkxy to jikexueyuan; --这条语句官方说不能用了 show databases; use jikexueyuan; /* 1.CREATE DATABASE new_d

sql:MySQL 6.7 表,视图,存储过程结构查询

#数据库MySQL 6.7 use sakila; #查询表名 show tables; # SELECT TABLE_NAME,TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='sakila'; select column_name from information_schema.columns where table_schema='sakila' and table_name='actor'; #表结构 字段名, 类

关于mongodb按照字段模糊查询方法

模糊查询:tname包含某个关键字测试' cd /opt/soft/mongodb/bin ./mongo --host 192.168.0.1  --port 17017  test db.test_info.find({"tname": {$regex: '测试', $options:'i'}}) db.test_info.find({"tname": {$regex:/测试.*/i}})