表categories
(TABLE_CATEGORIES),其字段为:categories_id
,parent_id
表categories_description
(TABLE_CATEGORIES_DESCRIPTION),其中包含以下字段:categories_id
,categories_name
,
现在,根据$cpath=parent_id
我希望获得categories_name
和categories_id
,这是我的命令,但它显示语法错误。
$query = "select c.categories_id, cd.categories_name from " .
TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd
where c.categories_id=cd.categories_id and c.parent_id=".$cPath;
错误:1064您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第2行的''附近使用正确的语法
答案 0 :(得分:0)
你应该使用
SELECT cd.categories_id, cd.categories_name
FROM `TABLE_CATEGORIES_DESCRIPTION` cd
INNER JOIN `TABLE_CATEGORIES` c
ON cd.categories_id = c.categories_id
WHERE c.parent_id = your_id
已编辑以反映已修改的用户问题:
你确定“TABLE_CATEGORIES”和“TABLE_CATEGORIES_DESCRIPTION”都不包含空格或奇怪的字符吗?
如果是这样,你必须用反引号将它们括起来。
答案 1 :(得分:0)
内部联接可能会有所帮助......
SELECT c.categories_id,cd.categories_name 来自TABLE_CATEGORIES c INNER JOIN TABLE_CATEGORIES_DESCRIPTION cd ON c.categories_id = cd.categories_id where c.parent_id = $ cPath
请检查此代码:
$ query =“select c.categories_id,cd.categories_name from”。 TABLE_CATEGORIES。 “ C, ” 。 TABLE_CATEGORIES_DESCRIPTION。 “cd where c.categories_id = cd.categories_id and c.parent_id ='”。$ cPath。“'”;