多个MYSQL表,如何批量查询数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多个MYSQL表,如何批量查询数据相关的知识,希望对你有一定的参考价值。

因为数据比较大,所以分割了5个表,想同时在5个表里面查询多个名字的内容
表有1,2,3,4,5表
字段分别是,名字,班级,年龄,成绩
想在1,2,3,4,5表里面同事查询 陈杰,陈明,王洁,王兵的字段内容

Select * From 表1 Where 名字 in ('陈杰','陈','王洁','王兵')
Union All
Select * From 表2 Where 名字 in ('陈杰','陈','王洁','王兵')
Union All
Select * From 表3 Where 名字 in ('陈杰','陈','王洁','王兵')
Union All
Select * From 表4 Where 名字 in ('陈杰','陈','王洁','王兵')
Union All
Select * From 表5 Where 名字 in ('陈杰','陈','王洁','王兵')

追问

有没有前面全部吧表合并,然后后面 in ('陈杰','陈','王洁','王兵')

这样如果我有60个表的话,岂不是每一个都要这样写

追答

另一种写法:

Select * From (
    Select * From 表1 Union All
    Select * From 表2 Union All
    Select * From 表3 Union All
    Select * From 表4 Union All
    Select * From 表5
) a
Where 名字 in ('陈杰','陈','王洁','王兵'

参考技术A 主键总是用的吧,通过主键 inner join来联表查询追问

有没有具体的语句啊

追答

Select * from name a inner join class b on a.studentId=b.studentId
studentId就是唯一标识

mySQL怎么批量替换查询结果中的字段值?

mySQL怎么批量替换查询结果中的字段值。不仅仅是简单替换某字段的,是替换查询结果的字段值。比如会员列表,在mySQL,我先按照性别、有头像、已通过邮箱验证检索出一部分会员,在这个查询结果中,我想把批量升级成VIP会员。这个操作语句怎么写?拜谢各位老师。

update 表名 set 身份字段=VIP会员等级值 where 性别字段=性别值 and 头像字段!=‘’ and 邮件检索字段=已通过状态值
按着以上规则更换你本地的信息即可,有疑问可以继续提问。
参考技术A UPDATE 表名称 SET `字段名` = replace(例如:`字段名`,'http*****', 'https******')
将http替换成https追问

不仅仅是简单替换某字段全部的值,是替换按条件查询出结果的字段值

参考技术B 把select替换为update,然后就可以了,慎重,先用一条试试

以上是关于多个MYSQL表,如何批量查询数据的主要内容,如果未能解决你的问题,请参考以下文章

mySQL怎么批量替换查询结果中的字段值?

请问SQL如何实现批量查询

access怎么能批量多个查询表啊?

MySQL批量插入查询出来的数据

mysql如何批量查询大量数据

Navicat for MySQL这个软件,如何批量删除数据,求大神指导.