2
|
chiborg Alessandro Minoccheri · 技术社区 · 14 年前 |
![]() |
1
1
考虑到数据,没有捷径可走。实际上这是唯一
固体
做这件事的方法。您可能需要注意的一件事是在可为空的列中正确比较空值。查询
此外,查询将不包括
如果需要经常执行此操作,则可以引入某种附加数据列,当行中的任何内容发生更改时,这些列将始终更新。这可以简单到
|
![]() |
2
1
有一种标准的sql方法可以做到这一点(减选择),但是mysql(以及许多其他dbms)不支持它。 如果失败,您可以尝试:
根据mysql文档,一个自然连接将连接所有同名列上的两个表。通过过滤掉b主键列返回空值的a记录,您实际上只得到没有匹配b表记录的a记录。 仅供参考:这是基于mysql文档,而不是个人经验。 |
![]() |
3
0
我能想到的最好的方法是创建一个临时表,它也具有相同的结构,但是在您要检查的30个字段中有一个唯一的限制。然后将表A中的所有行插入临时表,然后将表B中的所有行插入临时表…当b中的行进入时,(使用insert ignore),至少在1列上不唯一的行将被删除。结果将是,您只有在临时表中至少有一列扩散器的行。然后可以从中选择所有内容。 |
![]() |
Dsujan · 从第二个文件中获取更改行的差异 6 年前 |
![]() |
Damian Nadales · 让vc修订版其他窗口删除它获取的文件 6 年前 |
|
book · bash:如何打印diff命令输出? 7 年前 |
![]() |
lombocska · Liquibase diff-驱动程序问题 7 年前 |
![]() |
bitifet · 如何创建类似VCS的冲突合并文件? 7 年前 |