这个WHERE子句有什么问题?
问题描述:
是否有这个查询不起作用的原因?如果我只是排除WHERE子句,下面的查询将起作用。我需要知道它有什么问题。我知道$ key的给定值存在于表中,那么为什么这不起作用呢?这个WHERE子句有什么问题?
$q = "SELECT * WHERE t1.project=$key
FROM project_technologies AS t1
JOIN languages AS t2
ON t1.language = t2.key";
表的有以下字段:
project_technologies
- 关键
- 项目
- 语言
语言
- 关键
- 命名
答
WHERE在FROM/JOIN之后。
SELECT *
FROM project_technologies AS t1
JOIN languages AS t2
ON t1.language = t2.key
WHERE t1.project=$key
答
FROM
在SELECT
声明中出现在WHERE
之前。
答
"SELECT * FROM project_technologies AS t1 INNER JOIN languages AS t2 ON t1.language = t2.key WHERE t.project = '$key'";
答
SELECT *
FROM project_technologies AS t1
JOIN languages AS t2
ON t1.language = t2.key
WHERE t1.project=$key
答
您应该在FROM子句后,把你的WHERE子句。
答
SELECT * FROM project_technologies AS t1
JOIN languages AS t2
ON t1.language = t2.key
WHERE t1.project=$key
的where
应该是在年底(合并后)
答
在SQL你写:
SELECT ... FROM表... WHERE条件
你把东西以错误的顺序...
答
WHERE子句出现在FROM子句之后。
SELECT *
FROM project_technologies as t1
JOIN languages as t2
on t1.language = ts.key
WHERE t1.project = $key
答
我认为WHERE
必须在FROM
之后。你试过这个吗?
$q = "SELECT *
FROM project_technologies AS t1
JOIN languages AS t2
ON t1.language = t2.key
WHERE t1.project=$key";
答
也许这应该是把它写
"SELECT * FROM project_technologies AS t1 JOIN languages AS t2 ON t1.language = t2.key WHERE t1.project=$key";
强制性评论说“当心SQL注入的邪恶怪物”的正确途径。 – 2009-10-22 09:07:32