Php 获取记录时获取mysql错误
我在加入SQL查询以获取记录时遇到以下错误Php 获取记录时获取mysql错误,php,mysql,Php,Mysql,我在加入SQL查询以获取记录时遇到以下错误 #1066 - Not unique table/alias: 'v' 我在下面解释我的问题 $sql="select v.owner_id,v.driver_id,v.reg_no,v.brand,v.model,v.vehicle_type,m.category_id,m.id,m.model_name,m.manufacture_id,m.image,mn.id,mn.manufacture_name,c.cat_id,c.category_
#1066 - Not unique table/alias: 'v'
我在下面解释我的问题
$sql="select v.owner_id,v.driver_id,v.reg_no,v.brand,v.model,v.vehicle_type,m.category_id,m.id,m.model_name,m.manufacture_id,m.image,mn.id,mn.manufacture_name,c.cat_id,c.category_name from cb_vehicle_info as v inner join cb_vechile_model as m on v.model=m.id inner join cb_vechile_manufacture as mn on m.manufacture_id=mn.id inner join cb_vechile_category v.vehicle_type=c.cat_id where v.driver_id=:driver_id and v.vehicle_type=:vehicle_type";
在这里,我连接多个表以从表中获取记录,但它抛出了上述错误 我认为您在查询中的类别中使用了
作为c:
select
v.owner_id,v.driver_id,v.reg_no,v.brand,v.model,v.vehicle_type,m.category_id,m.id,m.model_name,m.manufacture_id,m.image,mn.id,mn.manufacture_name,c.cat_id,c.category_name
from
cb_vehicle_info as v
inner
join cb_vechile_model as m on v.model=m.id
inner
join cb_vechile_manufacture as mn on m.manufacture_id=mn.id
inner join
cb_vechile_category as c on v.vehicle_type=c.cat_id
where
v.driver_id=:driver_id
and
v.vehicle_type=:vehicle_type
你从来没有给cb_vechile_类别加过别名。如果你让你的查询对自己来说是可读的,那么你就会马上发现问题。@Drakula Predator问题的基本问题是查询排成一行。你不应该格式化它。没有冒犯,我也没想到会有其他反应,但请再考虑一下。编辑不应该改变问题的本质。是的,它基本上只是一个简单的语法错误。但即使是这些简单的错误也很难解决,而且已经有两个答案了。因此,我认为关闭它是不必要的。