2016-04-14 9 views
0

したがって、2つの列を持つテーブルを作成したいとします。最初の列はstudentIDを持ち、もう1列は対応する学生のGPAを持っています。私はsp_calculateGPAという名前のストアドプロシージャを持っています。このプロシージャは学生IDに基づいて学生の成績を調べ、GPAを計算します。Sql:ストアドプロシージャのパラメータとしてテーブルの列の値を使用する

2番目の列のGPA値を取得するために、ストアドプロシージャのパラメータとして最初の列の値を使用できますか?はいの場合、どうすればいいですか?あなたが合算行う必要がある場合

SELECT GPA FROM tableName WHERE studentID = @StudentID

、あなたがstudentIDによってグループ化することができ等級の平均:

はあなたが@StudentID INTにとり、その後んストアドプロシージャを作成することができますあなたの

+0

どのようにSPを実行していますか?一度に1人のstudentIdを渡そうとしていますか? –

+0

あなたはおそらく、そのためのストアドプロシージャの代わりにスカラー関数を望んでいるようです。 – Kateract

+0

@ron tornambe - はい、一度に1人の学生を渡したいと思います。 – user5669450

答えて

1

ありがとうございましたSUMCOUNTのような集計関数を使用する

+0

これはまさに私のストアドプロシージャのものです。しかし、私はプロシージャが作成するテーブルには左の列にstudentIDが、右の列にはその学生のGPAがあることを確認する必要があります。それ、どうやったら出来るの? – user5669450

+0

返された結果を意味するならば、あなたは 'SELECT studentID、GPA ...'を実行することができ、最初の列はIDで、2番目の列はGPA – Nived

関連する問題