1

ツールマスターテーブルで利用可能なものに対応するレンタルテーブルの各ツール番号の合計を取得する方法を教えてください。

レンタル

 _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
|tool_no| a1 | a2 | a3 | a4 |
|-------|----|----|----|----|
|  121  | 52 | 89 | 56 | 16 |
|-------|----|----|----|----|
|  142  | 45 | 94 | 89 | 12 |
|-------|----|----|----|----|
|  142  | 24 | 56 | 12 | 89 |
|-------|----|----|----|----|
|  156  | 96 | 89 | 14 | 16 |
|-------|----|----|----|----|

ツールマスター

 _ _ _ _ 
|tool_no|
|-------|
|  121  |
|-------|
|  142  |
|-------|
|  141  |
|-------|
|  150  | 
|-------|

私のクエリは以下のとおりです

select tool_no, SUM(a1+a2+a3+a4) AS rentalsum from Rental where tool_no IN(select tool_no from ToolMaster)

しかし、私は必要な結果を得ていません

私の期待される出力はこのようなものです

 _ _ _ _ _ _ _ _ _ _ _
| tool_no | rentalsum |
|---------|-----------|
|   121   |    213    |
|---------|-----------|
|   142   |    421    |
|---------|-----------|
4

3 に答える 3

1

現在のクエリに欠けているのはGROUP BY句だけです。ここを見る

しかし、私はそれJOINよりもむしろそれを行いINます。

SELECT  a.Tool_No,
        SUM(b.a1 + b.a2 + b.a3 + b.a4) totalSum
FROM    ToolMaster a
        INNER JOIN Rental b
            ON a.Tool_No = b.Tool_No
GROUP   BY a.Tool_No

結合についてさらに詳しく知りたい場合は、以下のリンクにアクセスしてください。

出力

╔═════════╦══════════╗
║ TOOL_NO ║ TOTALSUM ║
╠═════════╬══════════╣
║     121 ║      213 ║
║     142 ║      421 ║
╚═════════╩══════════╝
于 2013-05-01T06:29:57.267 に答える