SQL - >比较2个表

时间:2016-07-13 14:11:40

标签: sql

我们有两个名为A和B的表。这两个表包含一个公共字段,即DOB。在表A中,它填充为01/11/2011(MM/DD/YYYY),表B填充为11/01/2011(DD/MM/YYYY)我需要SQL查询来比较这两个表中的字段并获取此值。

2 个答案:

答案 0 :(得分:1)

关系数据库中的日期以内部格式存储。因此,我必须假设您的表将日期存储为字符串或数字。首先要做的是解决这个问题。使用原生格式是有利的 - 这就是它们存在的原因。

如果我假设字符串,您可以使用字符串操作来解决此问题。虽然数据库的功能可能不同,但想法是一样的:

date

由于所有功能,SQL引擎将无法利用索引。回到我的第一个建议,并将日期存储为数据库的相应traversalFilter="(HIERARCHY_ID:2000001) OR (DWH_COLUMN_NAME:P1_NO)"类型。

答案 1 :(得分:0)

喜欢什么?

SELECT
    A.DOB,
    A.DateTimeField - B.DateTimeField Difference
FROM
    TableA A
JOIN
    TableB B ON A.DOB = B.DOB