配列のデータを使用して列を追加し、MySql テーブルに結合したいと考えています。
たとえば、配列 ($relevance) があるとします。
$relevance = array(
array('product_id' => 1, 'relevance' => 2),
array('product_id' => 2, 'relevance' => 5),
array('product_id' => 3, 'relevance' => 1),
);
一方、次のテーブル (products) があります。
product_id | product_name
--------------------------
1 | Product 1
2 | Product 2
3 | Product 3
ここで、products
テーブルからデータを選択し、それらに$relevance
基づいてそれらを結合してproduct_id
、次のようなものを取得したいと考えています。
product_id | product_name | relevance
---------------------------------------
1 | Product 1 | 2
2 | Product 2 | 5
3 | Product 3 | 1
つまり、MySql データベースと、次のような「意味」を持つ配列の両方のデータを使用して、LEFT JOIN で SELECT を作成するにはどうすればよいですか。
SELECT `p`.*, `{{$relevance}}`.* FROM `products` AS `p`
LEFT JOIN `{{$relevance}}`
ON p.product_id = {{$relevance}}.product_id