更新:1回の出荷時間が常に順番に並んでいないことを示すために1回変更されました。ここ sqlのmax/minクエリとデータ変換
は私の入力create table test
(
shipment_id int,
stop_seq tinyint,
time datetime
)
insert into test values (1,1,'2009-8-10 8:00:00')
insert into test values (1,2,'2009-8-10 9:00:00')
insert into test values (1,3,'2009-8-10 10:00:00')
insert into test values (2,1,'2009-8-10 13:00:00')
insert into test values (2,2,'2009-8-10 14:00:00')
insert into test values (2,3,'2009-8-10 20:00:00')
insert into test values (2,4,'2009-8-10 18:00:00')
私はmax(stop)
行からそれぞれ出荷min(stop)
行と時間からの時間を取る必要があると
shipment_id start end
----------- ----- ---
1 8:00 10:00
2 13:00 18:00
下回ってほしい出力されますそれぞれ始点/終点に配置します。私はこれは複数のクエリではかなり簡単に行うことができますが、私は単一の選択クエリがこれを行うことができるかどうかを探しています。
ありがとうございました!
回は常に順番にではないかもしれない...私は私の例では...これを反映するために私の質問を更新したことを示すのを忘れてしまった。 – thomas
これは機能します。ありがとう。私はそれが複数の選択で行うことができることを知っていましたが、私の純粋主義者は選択肢を探していました。 – thomas
@thomas:clusteredインデックスをshipipment_idおよびstop_seqに作成すると、サブクエリの影響は無視されます。これは、すべての句がsargableでインデックス・シークを実行するためです。 – MyItchyChin