一行中来自不同表的行 sql
Rows from different tables in one row sql
我正在寻找一种解决方案,将 3 个 select 查询合并为一个查询,以优化我们产品的速度,同时减少数据库的等待时间。是这样的情况:
有3个table
第一个table(雇主):
*ID username*
1 employerFirst
2 employerSecond
3 omployerThird
第二 table(员工):
*ID username*
1 employeeFirst
2 employeeSecond
3 employeeThird
最后table(第三部分):
*ID username*
1 partFirst
2 partSecond
3 partThird
我需要的:
*username*
employerFirst
employerSecond
employerThird
employeeFirst
employeeSecond
employeeThird
partFirst
partSecond
partThird
使用 UNION
:
SELECT username FROM employer
UNION
SELECT username FROM employee
UNION
SELECT username FROM third_part
使用UNION ALL
或UNION
。
UNION
删除重复值,而 UNION ALL
将保留重复值。
取决于你正在接近什么。
SELECT username FROM employer
UNION ALL
SELECT username FROM employee
UNION ALL
SELECT username FROM third_Part
或者如果您不想 return 重复值:
SELECT username FROM employer
UNION
SELECT username FROM employee
UNION
SELECT username FROM third_Part
我正在寻找一种解决方案,将 3 个 select 查询合并为一个查询,以优化我们产品的速度,同时减少数据库的等待时间。是这样的情况:
有3个table
第一个table(雇主):*ID username*
1 employerFirst
2 employerSecond
3 omployerThird
第二 table(员工):
*ID username*
1 employeeFirst
2 employeeSecond
3 employeeThird
最后table(第三部分):
*ID username*
1 partFirst
2 partSecond
3 partThird
我需要的:
*username*
employerFirst
employerSecond
employerThird
employeeFirst
employeeSecond
employeeThird
partFirst
partSecond
partThird
使用 UNION
:
SELECT username FROM employer
UNION
SELECT username FROM employee
UNION
SELECT username FROM third_part
使用UNION ALL
或UNION
。
UNION
删除重复值,而 UNION ALL
将保留重复值。
取决于你正在接近什么。
SELECT username FROM employer
UNION ALL
SELECT username FROM employee
UNION ALL
SELECT username FROM third_Part
或者如果您不想 return 重复值:
SELECT username FROM employer
UNION
SELECT username FROM employee
UNION
SELECT username FROM third_Part