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