0

我有这样的表:

+---------------------------------+
| Group1                          | 
+-------+--------+----------------+ 
| Item1 | Value1 | Compare        |
+-------+--------+----------------+
| Item2 | Value2 | Compare        |
+-------+--------+----------------+
| Item3 | Value3 | Do not compare |
+-------+--------+----------------+
| Group2                          | 
+-------+--------+----------------+ 
| Item1 | Value1 | Compare        |
+-------+--------+----------------+
| Item2 | Value2 | Compare        |
+-------+--------+----------------+
| Item3 | Value3 | Do not compare |
+-------+--------+----------------+

在这样的表中,我可以有多个包含多个项目的组。我只需要比较写有“比较”的项目。例如,我需要更改 Group2 中 Value1 的颜色,如果该值大于 Group1 中的 Value1。我怎样才能做到这一点?如果每组中只有一条线可以比较,那会很容易,但是当有多条线时我不知道该怎么办。

4

1 回答 1

0

因此,您需要将新组与您知道其名称的旧组进行比较?此查询将为您提供任何新组并比较已标记为与原始组进行比较的名称相同的任何项目Group1,并为您提供旧值和新值:

SELECT New.GroupName AS NewGroup, New.ItemName AS NewItem, 
    Old.Value AS OldValue, New.Value AS NewValue
FROM MyTable New
INNER JOIN MyTable Old ON 
    Old.GroupName = 'Group1' AND 
    Old.ItemName = New.ItemName
    Old.CompareField = 'Compare' AND
    New.CompareField = 'Compare'
于 2013-02-22T11:01:39.280 回答