ID post_id meta_key meta_value
1 1 key_01 val
2 1 key_02 val
3 1 key_03 val
のように見えるmeta
テーブルを持っていると私はすべての3つのキーと値を取得したいです。 JOINを使用してSELECTを使用するのが遅くなりますか?例えば、それはそんなに簡単になるだろう、JOIN:
SELECT M1.meta_value AS key_01, M2.meta_value AS key_02, M3.meta_value AS key_04
FROM `meta` AS M1
JOIN `meta` M2 ON M2.post_id = 1 AND M2.meta_key = 'key_02'
JOIN `meta M3 ON M3.post_id = 1 AND M3.meta_key = 'key_03'
WHERE M1.meta_key = 'key_01'
私はどんなことをテストしていないが、あなたのアイデアを得る必要があります。
なぜカラムを必要とするのですか?あなたが望む3つのmeta_key値に基づいてレコードをフェッチし、アプリケーションが値を適切に引き出すようにする簡単なクエリです。 –