2016-04-11 14 views
1

私はいくつかのクエリ呼び出しを持っていますが、それを1つに置き換えたいのですが、それは可能ではありません。私のデータベースは次のようになります。いくつかのクエリを1つに置き換えることはできますか

enter image description here

私のデータベースを呼び出します:

$minbet = $mysql->query('SELECT `value` FROM `jackpot1_info` WHERE `name`="minbet"')->fetch_assoc(); 
$minbet = $minbet['value']; 

$maxbet = $mysql->query('SELECT `value` FROM `jackpot1_info` WHERE `name`="maxbet"')->fetch_assoc(); 
$maxbet = $maxbet['value']; 

$maxitems = $mysql->query('SELECT `value` FROM `jackpot1_info` WHERE `name`="maxitems"')->fetch_assoc(); 
$maxitems = $maxitems['value']; 

$maxitemsinpot = $mysql->query('SELECT `value` FROM `jackpot1_info` WHERE `name`="maxitemsinpot"')->fetch_assoc(); 
$maxitemsinpot = $maxitemsinpot['value']; 

答えて

2

それはちょうど、単一のクエリでnamevalueを選択し、別の行の各namevalueペアを持つことになり、簡単です:

array(2) { 
    'name' => 
    string(12884901894) "minbet" 
    'value' => 
    int(123) 
} 

array(2) { 
    'name' => 
    string(12884901894) "maxbet" 
    'value' => 
    int(456) 
} 

... 

$select = $mysql->query(' 
    SELECT `name`, `value` 
    FROM `jackpot1_info` 
    WHERE `name` IN ("minbet","maxbet","maxitemsinpot","maxitems") 
'); 

while ($result = $mysql->fetch_assoc()) 
{ 
    var_dump($result); 
} 

出力は次のようになります

私はあなたが残りをすることができると確信しています。

2

利用IN代わりの= 1つのクエリのため。

$select = $mysql->query('SELECT name,value FROM `jackpot1_info` WHERE `name` IN ("minbet","maxbet","maxitemsinpot","maxitems")'); 
$result = $mysql->fetch_assoc(); 
+0

Imが「未定義インデックス」のエラーを取得しています – Reason

+1

@RuchishParikh何とか意味をなさない。あなたは 'value'カラムを選択していますが、結果から' maxbet'カラムを読み取ろうとしています(これは明らかにありません)。 –

+0

あなたのコードを使って、どの値がどの名前に属しているのかを区別することができなくなります。最初のバージョンがまったく動かず、2番目のバージョンがOPの問題を解決するのに役立たないので、私は個人的にこの回答が2つのアップ・ボートを持っているのだろうと思っています。 –

関連する問題