Mysql比较两个表
如何比较不同表中的三个值Mysql比较两个表,mysql,Mysql,如何比较不同表中的三个值 pm_meta +----+----------+--------+----------+ | id | item_id |meta_key|meta_value| +----+----------+--------+----------+ | 2 | 100 | google |googl.com | | 3 | 101 | yahoo |yahoo.com | | 3 |
pm_meta
+----+----------+--------+----------+
| id | item_id |meta_key|meta_value|
+----+----------+--------+----------+
| 2 | 100 | google |googl.com |
| 3 | 101 | yahoo |yahoo.com |
| 3 | 102 | msn |msn.com |
+----+----------+--------+----------+
pm_embed_code
+------+-----------+------------+
| id | uniq_id |embed_code |
+------+-----------+------------+
| 100 | abcd |<iframe src=|
| 101 | dddc |<iframe src=|
| 102 | ffdd |<iframe src=|
+----+----------+------------+
$sql = "SELECT *
FROM pm_embed_code, pm_meta
WHERE pm_embed_code.uniq_id = 'abcd'
AND pm_embed_code.id = pm_meta.item_id
AND pm_meta.meta_key = 'google' ";
echo $row['meta_value']; // I want result "googl.com"
这一个也没有显示任何。。。为什么?使用连接:
Select * from pm_embed_code join pm_meta on pm_emped_code.id=m_meta.item_id
where pm_embed_code.uniq_id = 'abcd' AND pm_meta.meta_key = 'google'
您收到的错误消息。查询看起来是正确的
$sql = "SELECT pm.meta_value
FROM pm_embed_code pec, pm_meta pm
WHERE pec.id = pm.item_id
AND pec.uniq_id = 'abcd'
AND pm.meta_key = 'google' ";
echo $row['meta_value'];
查询:
选择pm.id为“pm\u embed\u code.id”,pm.meta\u key为“pm\u meta.meta\u key”,从pm\u meta pm左侧外部加入pm\u embed\u code pmc ON pmc.id=pm.item\u id,其中pmc.uniq\u id=“abcd”和pm.meta\u key='google'
代码
$sql=“选择pm.id作为“pm\u embed\u code.id”,pm.meta\u key作为“pm\u meta.meta\u key”,从pm\u meta pm左侧外部加入pm\u embed\u code pmc ON pmc.id=pm.item\u id,其中pm.uniq\u id=“abcd”和pm.meta\u key='google'”
echo$row[“pm_meta.meta_key”] 空结果,如果启用mysql错误我得到结果“1”,我很惊讶pm_meta.id不是唯一的,而item_id是!?!
SELECT pm_embed_code.* , pm_meta.*
FROM pm_embed_code
INNER JOIN pm_meta
ON pm_embed_code.id = pm_meta.item_id
AND pm_meta.meta_key = 'google'
WHERE pm_embed_code.uniq_id = 'abcd'
$sql = "SELECT pm.meta_value
FROM pm_embed_code pec, pm_meta pm
WHERE pec.id = pm.item_id
AND pec.uniq_id = 'abcd'
AND pm.meta_key = 'google' ";
echo $row['meta_value'];