【发布时间】:2018-07-12 18:59:04
【问题描述】:
基本上,我要比较的行的格式有点像这样: [Form Code]_[Version Date (mm/yy)].
更新表单时,它们使用相同的代码,但更改版本日期以反映它何时生效。因此,您可能会看到 Example_Code_12_01,然后将其替换为 Example_Code_12_17。
我要做的是编写一个 SQL Server 查询,该查询将遍历这些表单中的每一个,所有表单都具有不同的表单代码,并返回两个具有相同代码但版本日期不同的表单。
我在想它会是这样的:
select a.FullFormName, b.FullFormName
from Forms a
join Forms b on --here is where the logic for the compare would go--
where a.FullFormName != b.FullFormName
--The above is to make sure it doesn't return the same exact form twice
【问题讨论】:
-
您能提供一些示例数据并期待结果吗?
-
如果您知道要比较多少个字符,您可以使用 LEFT 或 SUBSTRING,如此处所述docs.microsoft.com/en-us/sql/t-sql/functions/…
-
@D Shih - 假设我在下面的数据集中有五个表格。它将循环并仅返回前两个,因为它们都是 AB_01_01,但是两个不同的版本。 Gordon Linoff 在下面的查询似乎找到了正确的信息。我可能需要稍微调整一下以说明我需要收集的更多信息,但它有我需要的比较。 AB_01_01_01_05 AB_01_01_05_16 CD_01_01_01_12 AB_06_28_01_11 JJ_72_01_01_05
标签: sql sql-server