这是我的查询
$searched = 'SELECT first_name, surname, team, id, time FROM users WHERE first_name LIKE "'.$firstname.'%" AND surname LIKE "'.$surname.'%"'
我需要在团队表上进行内部联接。
结构如下。
id
teamname
slug
我需要获得teams.id和users.id中的联接的团队名称。
我似乎无法正确使用语法。
答案 0 :(得分:0)
您需要INNER JOIN
。对于MySQL,time
也是keyword,最好逃避它。字段id
应与表名一起使用,因为它们不明确。最后,你受到SQL注入威胁。
SELECT users.first_name, users.surname, users.team, users.id AS users_id, `time`
FROM users
INNER JOIN teams
ON teams.id = users.id
WHERE users.first_name LIKE "'.$firstname.'%" AND users.surname LIKE "'.$surname.'%"
此外,JOIN应该在teams.id
和users.id
上是否有任何特殊原因。它们应该是不同的东西。
答案 1 :(得分:0)
你应该在where条件中没有team.id = users.teamid
或team.userid = users.id
吗?同样在你选择的#34; team"中。我想它应该是" teamname"。
SQL应该是
SELECT
first_name,
surname,
teamname,
id,
time
FROM
users,
teams
WHERE
first_name LIKE "'.$firstname.'%"
AND surname LIKE "'.$surname.'%"'
AND users.teamid = teams.id