Я создаю представление в MySQL от нескольких таблиц (в WordPress/WooCommerce), конечный результат должен выглядеть следующим образом:Выберите столбец, если условие выполняется
id name price sku
1 test 9.99 ABC
Таблицы для источника данных настроены так:
ПРОДУКТЫ ТАБЛИЦА
id name
1 test
METADATA ТАБЛИЦА
product_id meta_key value
1 price 9.99
1 sku ABC
У меня возникли проблемы с тем, как заставить meta_key отображаться в виде столбца в таблице окончательного представления.
Это то, что я до сих пор (это не работает, но может быть, это помогает показать логику я хочу использовать, см линии 3-4 ниже):
SELECT
products.id,
products.name,
metadata.value AS price IF meta_key = price
metadata.value AS sku IF meta_key = sku
FROM `products`
INNER JOIN `metadata`
ON products.id = metadata.product_id
гул .. это цена и ску действительно таблицы? Я не знал, что мы можем ссылаться на значение поля таким образом –
нет, в этом случае они являются псевдонимами таблицы метаданных, которые были указаны в соединении – jmoerdyk
. Это замечательно. в моей голове открываются новые сферы славы sql. –