Php 如何从MySQL中的多个表中选择最低的数字?
如何从三个表中获取每个Id的最低值?因此,当我执行查询时,它会发布如下内容:Php 如何从MySQL中的多个表中选择最低的数字?,php,mysql,Php,Mysql,如何从三个表中获取每个Id的最低值?因此,当我执行查询时,它会发布如下内容: Lets say I have three tables: Table1 Id Score 1 2 2 5 3 5 Table2 Id Score 1 1 2 2 3 3 Table3 Id Score 1 4 2 4 3 2 谢谢 您只需使用UNION组合三个表中的记录并将其包装到子查询中,然后使用MIN()获得每个ID的最低分数 I
Lets say I have three tables:
Table1
Id Score
1 2
2 5
3 5
Table2
Id Score
1 1
2 2
3 3
Table3
Id Score
1 4
2 4
3 2
谢谢 您只需使用
UNION
组合三个表中的记录并将其包装到子查询中,然后使用MIN()
获得每个ID
的最低分数
Id LowestScore
1 1
2 2
3 2
SELECT ID, MIN(Score) Score
FROM
(
SELECT ID, Score FROM Table1
UNION ALL
SELECT ID, Score FROM Table2
UNION ALL
SELECT ID, Score FROM Table3
) sub
GROUP BY ID
您只需使用
UNION
组合三个表中的记录并将其包装到子查询中,然后使用MIN()
获得每个ID
的最低分数
Id LowestScore
1 1
2 2
3 2
SELECT ID, MIN(Score) Score
FROM
(
SELECT ID, Score FROM Table1
UNION ALL
SELECT ID, Score FROM Table2
UNION ALL
SELECT ID, Score FROM Table3
) sub
GROUP BY ID
嘿,谢谢!!,一个问题是,有些分数是空的,我怎么能把它们当作0,如果是这样的话,选择它作为最低的分数使用
COALESCE
,例如:select ID,COALESCE(Score,0)Score FROM table 1
嘿,谢谢!!,一个问题是,有些分数是空的,我怎么能把它们当作0,如果是这样的话,选择它作为最低的分数使用COALESCE
,例如:select ID,COALESCE(Score,0)Score FROM table 1