0

ドロップダウン メニューで選択した内容に応じて、複数のテーブルからデータをフェッチしようとしています。私のドロップダウン メニューは、ID のリスト (001、002 など) で構成されています。

ユーザーがそれらのいずれかを選択したら、選択内容に応じて AJAX を使用して動的にデータをフェッチします。選択内容に応じて単一の値を取得できましたが、複数のテーブルが関係している場合に問題が発生しました。

私のテーブルは次のように設定されています:

在庫表:

inven_ID (primary)
cost
description

注文表:

order_ID(primary)
orderdesc

販売表:

inven_ID
order_ID
quantity
primary(inven_ID,order_ID)

私のクエリは次のとおりです。

$QRY = "SELECT 
          inven_ID, 
          order_ID, 
          cost, 
          description 
        FROM 
          Inventory, 
          Order, 
          Sale 
        WHERE Inventory.inven_ID = Sale.inven_id 
        AND Sale.order_ID = Order.order_ID 
        AND Order.order_ID ='".$q."'";

$q、ドロップダウン メニューの値を表します (有効であることを確認しました)。inven_IDフィールド リストの列 ' ' があいまいですというエラーが表示されます。基本的に、ドロップダウンから注文 ID (001 など) を選択するとorder_ID、Order テーブルが検索され、その特定の注文 ID の inven_ID/cost/description が取得されます。

例えば。誰かが部品 xy、yz、xyz を 10、20、30 で注文したとします。

Selecting 001 would bring up:
001 xy 10
001 yz 20
001 xyz 30

エラーがあいまいであると表示されているため、テーブルを適切に結合していないと思います。

これについて何か助けはありますか?

編集:はい、問題を修正しました。私がそれをキャッチしなかったことは明らかです。

4

2 に答える 2

0

select の列リストで、取得する inven_ID を指定するだけです。例えば:

SELECT Inventory.inven_ID, ...
于 2012-11-03T23:18:09.977 に答える
0

エラーはかなり明白です。inven_ID は inSaleと in にあるためあいまいですInventorySale.inven_IDまたはのような指定子を使用しますInventory.inven_ID

于 2012-11-03T23:18:30.647 に答える