|
|
1
13
对不起,但是你的想法有偏差。 这样想:如果您只想从tb2中为tb1中的每一行选择一行,那么服务器应该选择哪一行?事实上,从联接的定义来看,与左侧行匹配的右侧表中的每一行都是匹配的,必须包括在内。 在连接之前,必须确保tbl2具有不同的c2值。如果您的SQL变体支持不同的[列],Murph的建议可能会做到这一点(并非全部做到)。 |
|
2
4
试用使用
|
|
|
3
4
嗯,查询正在做它应该做的事情,因为在右手边的表中有重复的记录(或者至少有重复的标识符)。 为了达到你想要的效果,比如:
如果这还不够,您需要更详细地解释一下这个需求。 |
|
|
4
3
选择distinct*from@tb1 left outer join@tb2 on c1=c2 |
|
|
5
3
如果只想在左侧保留一行,则需要为左侧的每个唯一值决定要在右侧显示的内容。例如,如果要显示计数,可以执行以下操作:
或者,如果您只希望c2中出现一个值:
|
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |