2016-10-01 2 views
0

は私が複数の行sqの合計。

ID | cID |tokens 
----|:----|:---- 
39 |2021 | 2 
----|:----|:---- 
70 | 2240| 1 
----|:----|:---- 
74 |1410 | 5 
----|:----|:---- 
91 | 2427| 31 
----|:----|:---- 
104 | 31 | 12 
----|:----|:---- 
111 | 2432|11 
----|:----|:---- 
369 | 363 | 4 
----|:----|:---- 
370 |363 | 3 
----|:----|:---- 
371 | 363 | 5 
----|:----|:---- 

だから、基本的に、彼らは共通の「CID」を共有するため、「トークン」の欄にアップ追加する下の3行をしようとして一つの共通列の値に基づいてテーブルの行を合計しようとしています(363)

(上のすべての行) 369 |次のようなものを生成する必要があります。 363 | 12

これはIDによってchar_tokens群からトークンとしてCコード(間違った同様)

のsprintf(クエリ、「ID、CID、和(トークンとして分(ID)を選択)のラインによって開始されます");ここでは完全にテーブルを作る際にめちゃめちゃ

...

誰かが助けてくださいことはできますか? ありがとうございます。

+1

を持っているので、あなたはIDとないCIDによってグループ化している何SENSを持っていない、全体の問題ということでしょうか? –

+0

なぜCタグ、してください? – alk

+0

これは、コードが何回実行されたかの内部カウンタです...完全に無視することができます。重要な部分はcIDとトークンです。 Cタグが原因です。これをCで記述してコンパイルする必要があります。コマンドが呼び出されるとコードが実行されます。 - 2つの部分のプロセス。 – Night

答えて

0

IDで

... group by cID 

グループ化して試してみてくださいあなたは固有IDのみ

+0

char_tokensグループからトークンとしてID、cID、sum(トークン)をcIDで選択します。 合計で369 - 363 - 12 になりますが、実際のテーブルは変更されません。コードが行うことを「プレビュー」し、すべてのデータを含むテーブルは元の状態です。 – Night

+0

実際の表を変更するために何もしていないためです。 Sqlは実行時にこれらの結果を作成します。ところで、なぜ実際のテーブルの値を変更したいのですか?必要に応じて、別のテーブルを作成して格納します。 –

+0

@Night - 希望の最終結果をアドバイスして、これを完全な解像度にすることができます。 – Parfait