表示しているページに応じてMETA情報を挿入できるように、動的なMETA情報を実現しようとしています。
私は3つのテーブルを持っています
CATEGORIES
category_id,
category_name,
category_title,
category_url,
site_id,
SITE
site_id,
site_name,
site_url,
meta_kw,
meta_desc,
CATEGORY_META
site_id,
category_id,
meta_keywords,
meta_description,
CATEGORY_METAテーブル内に情報が存在しない場合に、SITEテーブルからのMETA情報の入力を可能にするクエリを実行しようとしています。これを実現するために、私は存在する「category_url」を調べ、そこから「category_id」を拾い集めてサブクエリを実行しています。しかし、それは私が望まない空の行を返し、エラーを引き起こしています。
私のクエリは次のようになります。
SELECT category_id, s.meta_kw, s.meta_desc, m.meta_keywords, m.meta_description
FROM cms_sites s
LEFT JOIN cms_category_meta m
ON s.site_id=m.site_id AND m.category_id =
(SELECT category_id FROM cms_categories WHERE category_url='?')
これは次を返します:
|category_id |meta_kw |meta_Desc | meta_keywords |meta_description |
|NULL |kw |desc |NULL |NULL |
|NULL | | |NULL |NULL |
私はMySQLに比較的慣れていないので、助けていただければ幸いです。