我遇到了一个问题,无法解决。
$raw_results = mysql_query("SELECT g.id AS gig_id, g.sname AS gig_name, g.start AS start FROM gig AS g
WHERE (`sname` LIKE '%".$query."%')") or die(mysql_error());
这目前可行,但是我正在添加一个联接(目前并不重要)。
当我尝试在子句中切换“ sname”时
(`sname` LIKE '%".$query."%')
使用g.sname或gig_name
我在“ where子句”中收到错误未知列“ g.sname” [或gig_name]。
无论如何要获得不更改我的PHP的解决方法?
此代码用于php网页上的搜索功能。
编辑:我正在努力工作
$raw_results = mysql_query("SELECT g.id AS gig_id, g.sname AS gig_name, g.start AS start, v.sname AS venue_name FROM gig AS g, venue as v
WHERE g.venue=v.id AND (`gig_name` LIKE '%".$query."%')") or die(mysql_error());
最佳答案
尝试这种方式,您需要在where子句中使用g.sname
$raw_results = mysql_query(
"SELECT
g.id AS gig_id,
g.sname AS gig_name,
g.start AS start,
v.sname AS venue_name
FROM gig g
inner join
venue v on v.id = g.venue
WHERE
`g`.`sname` LIKE '%".$query."%'"
) or die(mysql_error());
DEMO
关于php - 'where子句'MYSQL,PHP中的未知列[name],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23404040/