2011-12-15 25 views
-2

このクエリでは、私はこのテーブルで非常に多くの行を選択しますx_giolam
- このクエリで選択されたすべての行とすべての 'giolam'を加算する 'For'を作成します。Pythonは、 'For'ループを作成します

cr.execute("""select name,giolam from x_giolam where name=%s"""%(ma_luong)), 

は、私はあなたが何をすべき

+1

これから適応

cursor.execute("""select name,giolam from x_giolam where name=%s"""%(ma_luong)), rows = cursor.fetchall() for row in rows: print sum = sum + row.giolam 

のようなものは本当に実際には、[SQLに実に危険と影響を受けやすいですので、安全ではありません注射攻撃](http://en.wikipedia.org/wiki/SQL_injection)を参照してください。 'execute(" "nameを選択すると、name =?" "、ma_luong)という名前のx_giolamからgiolamを実行してください。 –

+0

私の先生は私の例です: def.get_maphieutien(self、cr、uid、field_name、arg、context): res = {} self.browseのobj(cr、uid、ids、context = context) : cr.execute( "" x_phieutienからカウントを選択 "" ") stt = cr.fetchone()[0] res [obj.id] = stt 返信 ' –

+0

私は同じことをします私はerpのためにそれを行い、私は '合計'を持っているので、ループの作成と値の返すために、 –

答えて

5

選択した行を含むすべての「giolam」を合計するループを作成したい、そのクエリでは、ないのループのために:

SELECT name, SUM(giolam) as giolam_sum FROM x_giolam WHERE name=%s GROUP BY name 

あるいは、あなたはname=%sによって制限しているので、すでにあなたはマイケルようGROUP BY

SELECT SUM(giolam) as giolam_sum FROM x_giolam WHERE name=%s 
+0

のmenthod –

0

を必要としません。クエリで合計を計算する必要があります。あなたが行うことができます一致する各列をループに死んでセットされている場合は、この:: pyodbc refence

関連する問題