0

私はこのコードを持っており、非常にうまく動作します。select別のテーブルからの移動方法に問題があります。このコードは、2 つの異なるテーブルの行き来の方法selectを示しています。という別のテーブルからsum()移動する場合はどうすればよいですか。1 つのクエリで 3 つのテーブルを選択しています。やり方がわかりません。コードを検索していますが、適用するのが難しいです。selecttblproductlist

$result = mysql_query("SELECT (
 SELECT SUM(s.total)-SUM(r.total) FROM rsales AS s WHERE r.pcode=s.pcode
 ) as total, r.pcode 
 FROM rreturn AS r 
 GROUP BY r.pcode;");

このコードを試しましたが、エラーが返されます。

$result = mysql_query("SELECT productlist.*,
(SELECT SUM(s.total)-SUM(r.total) 
  FROM rsales AS s 
  WHERE r.pcode=s.pcode) as total, 
r.pcode FROM rreturn AS r 
GROUP BY r.pcode;");

たとえば、このff値があります。

tbl製品リスト

pcode | pname |
111   | wire  |

卓上販売

|  total    | pcode |
|  200      |  111  |
|  200      |  111  |

テーブルリターン

|  total    | pcode |
|  200      |  111  |

したがって、その合計を差し引いた後の出力は、次のようになります。

pcode | pname | total
111   | wire  | 200   |
4

1 に答える 1

0

非常に大まかに言えば、クエリの結果は (a) 同じ構造を持ち、(b) 何らかの形で関連している必要があります。構築しようとしているように見える結果セットには、どちらのプロパティもありません (少なくとも、クエリのすべての部分が同じ行数を返す必要があります)。下流で行う必要があります。

于 2013-09-09T16:17:44.500 に答える