-1

2 つのクエリを結合するのに問題があります。これらは私のクエリです。

$sql = "SELECT SourcePath, Description, BikeCode FROM BikeImages order by bikecode";
$sql1 = "SELECT BikeCode, Manufacturer, Model, SubType, Year, FrameMaterial, Description, Gender, Type, Price, Stock FROM Bike WHERE Stock > 0";
$result = mysqli_query($con, $sql);
$result1 = mysqli_query($con, $sql1);

助けていただければ幸いです。次のように、それらを結合するためのいくつかのアイデアがありました

$result = mysqli_query($sql && $sql1, $con);

しかし、うまくいかないようです。2 つの $sql を結合する必要がある場合、どうすればよいでしょうか?

編集: テーブルは関連しています。これは、Bike テーブルからすべての情報を表示し、個々の BikeCode に関連する BikeImages テーブルから画像を取得する while ループを作成するためです。

テーブルをリンクした後、このコードを使用して情報を表示したいと思います。

while(list($bikecode, $manufacturer, $model, $subtype, $year, $fmaterial, $desc, $gender, $type, $price, $stock, $sourcepath, $description) = mysqli_fetch_row($result1)) {   
echo "information here  
}

ありがとう

4

2 に答える 2

1

JOINを使用してこれら 2 つのテーブルを結合することを検討する必要があります。両方のテーブルに存在するように見えるBikeCodeので、次のようなクエリを結合できるはずです。

SELECT b.BikeCode, 
  b.Manufacturer, 
  b.Model, 
  b.SubType, 
  b.Year, 
  b.FrameMaterial, 
  b.Description, 
  b.Gender, 
  b.Type, 
  b.Price, 
  b.Stock,
  i.SourcePath,
  i.Description
FROM Bike b
LEFT JOIN BikeImages i
  on b.bikecode = i.bikecode
WHERE b.Stock > 0
ORDER BY b.BikeCode

これにより、すべてのデータを 1 つの結果として返すことができます。

結合構文を学習するのに助けが必要な場合は、ここに結合の優れた視覚的説明があります

于 2012-12-08T20:53:31.280 に答える
0

MySQL JOIN を使用する必要があります: http://dev.mysql.com/doc/refman/5.0/en/join.html

PHP で結合を行わないでください。遅くて複雑です。

ここの素晴らしいチュートリアル: http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html

于 2012-12-08T20:41:15.857 に答える