1
3
使用多个
|
2
1
我把任务理解为:加入ID1上的表。如果查询没有结果,则连接ID2上的表。等等。如果这是正确的,那么:
您可以简单地连接所有ID,然后只保留“最佳”ID上连接的行
如果你的意思是 排
样本数据: TableA ID | EXTID -----+------ 100 | 1 200 | 2 300 | 3 400 | 4 TableB ID1 | ID2 | ID3 | ID4 ----+-----+-----+---- 2 | 3 | | 2 | 4 | | 3 | 4 | | 3 | 2 | 4 | 1 Result for query #1 (all matches on ID1): ID | EXTID | ID1 | ID2 | ID3 | ID4 ----+-------+-----+-----+-----+---- 200 | 2 | 2 | 3 | | 200 | 2 | 2 | 4 | | 300 | 3 | 3 | 4 | | 300 | 3 | 3 | 2 | 4 | 1 Result for query #2 (first matching ID): ID | EXTID | ID1 | ID2 | ID3 | ID4 ----+-------+-----+-----+-----+---- 100 | 1 | 3 | 2 | 4 | 1 200 | 2 | 2 | 3 | | 200 | 2 | 2 | 4 | | 300 | 3 | 3 | 4 | | 300 | 3 | 3 | 2 | 4 | 1 400 | 4 | 2 | 4 | | 400 | 4 | 3 | 4 | | |
3
0
如果已知Id1、Id2、Id3、Id4等的数目,联合可能是一个好的选择。
|
Community wiki · SQL语法新手 1 年前 |
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |