什么是查询mysql相似表的最佳方法

问题描述 投票:-3回答:1

我有三个表table1,table2,table3

Table1
user ID,name, class, rollno, maths, English, literature
Table2 
User ID, name, class, rollno, maths, English, physics
Table3
User ID, name, maths, English, geography

查询mysql以获取一个不同结果的最佳方法是什么$ query =“ select * from table1,其中class ='class和rollno ='rollno'联盟从table2中选择*,其中class ='class和rollno ='rollno'联盟从表3中选择*,其中class ='class和rollno ='rollno'“;当我这样做时,它不起作用

php mysql
1个回答
0
投票

很难从您的问题中了解如何构建结果集,但是一般而言,在sql中组合结果的主要方法有两种:join和union。

join表示获取两个数据集并以一种方式连接它们,即结果中的每一行将包含两个数据集中的列,并且结果将通过某个共享列进行连接。在您描述的表结构中,可以使用userId组合结果,从而为您提供具有userId,地理位置(来自table1)和物理(来自table2)的行]

union表示获取两个数据集并以每行来自一个表的方式连接它们,结果只是表1的所有行+表2的所有行(有或没有重复项)。这里的限制是两个数据集应包含相同的列。例如,在您的表中,可以从所有三个表中获取userId,名称和数学。

© www.soinside.com 2019 - 2024. All rights reserved.