0
DECLARE @Test TABLE (id INT,smo NVARCHAR(100),grad NVARCHAR(100),lst int)

INSERT INTO @Test
SELECT 11,'Ali','G',1
UNION ALL
SELECT 11,'Ali','C',1
UNION ALL
SELECT 11,'Ali','F',0
UNION ALL
SELECT 12,'Veli','C',1
UNION ALL
SELECT 12,'Veli','G',1


SELECT t.id, t.smo, t.grad,c.* FROM @Test t
CROSS APPLY(
SELECT  MIN(lst) glst FROM @Test t1
WHERE t1.id=t.id
GROUP BY id, smo
) c

@Test テーブルは、実際には別のクエリからの結果です。

私が欲しいのは、「smo」値ごとに「lst」列から最小値を受け取ることです。

クロス適用を使用すると、テーブルの場合に必要なものを達成できます。

私がそのような状態にあるとき、どうすればそれを解決できますか。

SELECT * FROM (
SELECT * FROM @Test 

) t

ここに画像の説明を入力 入力

ここに画像の説明を入力 期待される出力

よろしくお願いします...

4

0 に答える 0