2017-12-02 6 views
-2

カーソルまたはwhileループの最初のセット(seq = 1の場合)を実行してから操作を行い、2番目のセットseq(seq = 2の場合)、3番目のシーケンスセットのように...データセットのカーソルまたはWhileループ

サンプルコード

enter image description here

+0

あなたは、ネストされた選択を意味していますか? –

+0

質問を改善するためのヒントについては、[こちら](http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/)をお読みください。 – HABO

+0

...あなたは "その時"と "操作を行う"という意味を広げることができます。 "そして"それは2に何が行われたかは、あなたが1にすることに依存することを意味していますか?そして、 "操作は"少しばかり曖昧です。 –

答えて

1

まず、あなたはそれらの操作が何であるかを定義することになるでしょう。次に、CASE WHEN THEN句またはUNION ALLマージを実行できます。 SUMなどの集計関数のための

SELECT * 
/* do operation #1 */ 
FROM table 
WHERE Seq = 1 
UNION ALL 
SELECT * 
/* do operation #2 */ 
FROM table 
WHERE Seq = 2 

それともできGROUP BYは:

SELECT Seq, SUM(cost) AS Total 
FROM table 
GROUP BY Seq 

出力する必要があります

Seq Total 

1 4400 
2 56400 
+0

お時間を頂きましてありがとうございますが、これはseqが1,2,3の場合にのみ役立ちますが、その10000が10000ユニオンのすべてのステートメントを書くことができない場合はどうなりますか? – user3516970

+0

ケースまたはグループ化の場合はどうですか?操作は集約されているか(または異なるか)。異なる場合は、いくつの操作がありますか?ケースバイケースで異なる操作が必要な場合は、PHPなどのサーバーサイドスクリプトが役立ちます。 –

関連する問題