简体   繁体   English

where子句中的列是不明确的 - 这是什么意思?

[英]Column in where clause is ambiguous - What does that mean?

I've come across this error in MySQL for the join clause but I'm fairly new to the JOIN argument and I'm not sure what this means. 我在MySQL中遇到了连接子句中的这个错误,但我对JOIN参数还不JOIN ,我不确定这意味着什么。 Can anyone help? 有人可以帮忙吗?

Column 'id' in where clause is ambiguous where子句中的列'id'是不明确的

SELECT * FROM (`venues`) 
JOIN `venues_meta` ON `venues_meta`.`venue_id` = `venues`.`id` 
WHERE `id` = '12'

您需要完全限定id ,因为venuesvenues_meta都有一个称为列id

I think you want: 我想你想要:

SELECT * FROM `venues` v, `venues_meta` m  where v.venue_id = m.id AND  m.id = '12'

(but be sure it's v.venue_id you want and not v.id) (但要确保它是你想要的v.venue_id而不是v.id)

Try this Code 试试这个代码

SELECT v.*
FROM `venues` AS `v` 
INNER JOIN `venues_meta` AS `vm` ON `vm`.`venue_id` = `v`.`id` 
WHERE `v`.`id` = '12'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM