字段列表中的列'name'含糊不清
<?php
$cid=$_REQUEST['cn'];
$sid=$_REQUEST['sn'];
$query="select name,NAME from products a,category b where a.category_id=$cid and a.store_id=$cid and a.category_id=b.ID ";
$result= mysqli_query($link, $query)or die(mysqli_error($link));
?>
我编写简单的程序,它显示以下错误。如果我提到名称为products.name,那么它会显示未知的列products.name。字段列表中的列'name'含糊不清
主要错误是在字段列表列“名”不明确
你需要预先选定列,因为你正在做在包含具有相同的名称如:
select a.name as prod_name,b.NAME as cat_name
from products a,category b
where a.category_id=$cid
and a.store_id=$cid
and a.category_id=b.ID
列多个表的查询
谢谢..正在工作。但为什么我们需要这个,。以及为什么该查询正在perfetcly运行,我提到 – 2015-02-07 21:05:40
我想这是因为您选择了所有表之间不共享的列。如果在产品和类别中都有名为“name”的列,则会成为问题 - 定义会变得模糊不清。如果这些列被命名为例如。 “p_name”和“c_name”这个问题就不存在了。 – castor 2015-02-07 21:07:33
和另一个问题...为什么城市名称在城市名称运行时发生错误 – 2015-02-07 21:08:00
此查询完美工作 $ query =“从tbemployee a,tbdep b,tbdsg c选择empno,ename,eadd,esal,edno,edsgcod,dname,dsgnam,其中a.edno = b.dno和a。 edsgcod = c.dsgcod“; – 2015-02-07 21:01:14
试试'a.name,b.name' – 2015-02-07 21:16:02