0

これから:

|-------------------------------|
| Column1 |  Column2  |  Column3|
|-------------------------------|
|   1     |     2     |    3    |
|-------------------------------|
|   1     |     2     |    4    |
|-------------------------------|
|   1     |     2     |    4    |
|-------------------------------|
|   2     |     5     |    6    |
|-------------------------------|
|   3     |     7     |    7    |
|-------------------------------|

どうすればこれを達成できますか?

|-------------------------------|
| Column1 |  Column2  |  Column3|
|-------------------------------|
|   1     |     2     |    3    |
|-------------------------------|
|   2     |     5     |    6    |
|-------------------------------|
|   3     |     7     |    7    |
|-------------------------------|

列3に値4の2つの異なる行があるという事実のみに基づいています。

このデータグリッドは最大で数千に達する可能性があるため、これを行うためのコスト効率の高い方法があると便利です。

4

2 に答える 2

0

あなたの状態に基づくオプション

SELECT *
FROM dbo.yourTable t
WHERE EXISTS (         
              SELECT 1
              FROM dbo.yourTable t2
              WHERE t2.Column3 = t.Column3
              HAVING COUNT(*) = 1
              )
于 2013-03-14T22:29:57.000 に答える
0

あなたの例を挙げると、「重複を含む」列の最小値を選択します。

select a.column1, a.column2, min(a.column3) as column3
from table as a
group by a.column1, a.column2
于 2013-03-14T22:20:05.170 に答える