2017-03-13 15 views
0

MySQLデータベースからデータを選択する際に問題が発生しました。例えば複合SELECT MySQLステートメント

、私は次の列&テーブルとテーブルを持っている:

Table name: farming 

id | animal | amount | food 
---------------------------- 
1 | Cow | 10 | Grass 
12 | Sheep | 19 | Grass 
23 | Lion |  1 | Everything 
29 | Lamb |  3 | Grass 
102| Pig |  8 | Everything 
... 

私が選択したidfoodタイプに一致するすべての行からamountを取得したいです。

など。私はid: 102を選択した場合id = 1のfoodtypeがGrassあるとして、それはすべての行からamountを選択する必要がありますので、それは、(food = 'Everything'

SELECT amount FROM farming WHERE food = '".$_GET['food']."' **IS THE SAME TYPE AS IT IS IN** id = '1'"; //これは1019amountから3を選択する必要があるすべての行からamountになるだろうどこfoodtype =草。

**私は問題に直面してるところ、私は様々な文を試してみたされ、それが仕事を得るように見えることはできません。

+2

使用ネストされたクエリは '食品=は(ここで、ID = 102農業から食品を選択)ここで、農業の量を選択トリックを行う必要があり' – gvmani

+0

@gvmaniそれで解決しました!良いですね! – AlwaysCooking

答えて

0

あなたは総括れるgroup by句を使用することができますa量カラムからLL値whre食品=「草」

SELECT SUM(amount) ammount FROM farming 
     WHERE food = (select food FROM farming where id = 102) 
     GROUP BY food 
0

これは

select amount 
from farming 
where food = (
      select food 
      from farming 
      where id = 1 
     ) 
関連する問題