2012-01-13 3 views
0

私は、例えば以下の値を持つ配列を持っています:$ id_list = array(1,2,9,37);配列のフィールドを合計するにはどうすればいいですか?

私はクエリを持っており、Idと配列の一致するテーブルのすべての値の合計を返す必要があります。 ID 1,2,9および37を持つすべてのフィールドの合計は109350であれば

$tr_query="SELECT SUM(Value1), SUM(Value2) 
FROM table WHERE Id IN(".implode(",",$id_list).")"; 

だから、それはその値を返す必要があります:これが今の私のクエリです。

ありがとうございます!

+0

をそして、それはないですか?それを試しましたか?うまく動作するはずです。 –

+0

あなたの配列の内容が文字列に 'implode()'したときに追加のエスケープを必要としないすべての整数であることを確認してください。 –

+0

すべてのIDに対して何かが返されるので、INは機能しません。 – Jordy

答えて

0

はこのお試しください:

$tr_query="SELECT SUM(SELECT value1 FROM table WHERE id IN (".implode(",",$id_list).")), SUM(SELECT value2 FROM table WHERE id IN (".implode(",",$id_list).")) FROM dual"; 
関連する問題