Mysql SQLSTATE错误语法错误或访问冲突:1066非唯一表/别名:';用户会话';

Mysql SQLSTATE错误语法错误或访问冲突:1066非唯一表/别名:';用户会话';,mysql,sql,select,join,mysql-error-1066,Mysql,Sql,Select,Join,Mysql Error 1066,我在使用联接的简单查询中出错 我的问题是: SELECT users_sessions.user_id AS users_sessions_user_id, users.last_name AS users_last_name, users.first_name AS users_first_name FROM prefix_users_sessions AS users_sessions, prefix_users AS users INNER JOIN

我在使用联接的简单查询中出错

我的问题是:

SELECT users_sessions.user_id AS users_sessions_user_id,
       users.last_name AS users_last_name,
       users.first_name AS users_first_name 
FROM prefix_users_sessions AS users_sessions,
     prefix_users AS users INNER JOIN 
     users_sessions 
     ON users.id = users_sessions.user_id
我的错误:

SQLSTATE[42000]:语法错误或访问冲突:1066不唯一 表/别名:“用户会话”

我不明白这个信息。。。我看不出这个别名在哪里用得更多

谁能帮我解决这个问题

提前感谢你的帮助

--解决--

好的查询如下所示:

    SELECT users_sessions.id AS users_sessions_id,
           users_sessions.user_id AS users_sessions_user_id,
           users.lastname AS users_lastname, users.firstname AS
           users_firstname
    FROM prefix_users_sessions AS users_sessions
           JOIN prefix_users AS users ON users.id = users_sessions.user_id 

您使用name
users\u sessions
两次。 首先作为
前缀用户会话的别名,然后作为
内部联接中的普通表。另外,请尝试使用
内部联接
s,不要同时从两个表中进行选择,例如(在您的查询中):


您指定了两次表前缀用户\u会话

SELECT  users_sessions.user_id AS users_sessions_user_id,
        users.last_name AS users_last_name,
        users.first_name AS users_first_name
FROM    prefix_users_sessions AS users_sessions
        INNER JOIN prefix_users AS users 
            ON users.id = users_sessions.user_id

你的
from
子句全搞乱了。一条简单的规则:在
FROM
子句中不要使用逗号。始终使用显式
JOIN
语法

此外,请使用较短的表别名,以便更易于编写和读取查询:

SELECT us.user_id AS users_sessions_user_id,
       u.last_name AS users_last_name,
       u.first_name AS users_first_name 
FROM prefix_users_sessions us INNER JOIN
     prefix_users  u 
     ON u.id = us.user_id;

这假设您没有一个名为
users\u sessions
的表,目的是使用一个名为
prefix\u users\u sessions
的表来感谢您的支持
SELECT us.user_id AS users_sessions_user_id,
       u.last_name AS users_last_name,
       u.first_name AS users_first_name 
FROM prefix_users_sessions us INNER JOIN
     prefix_users  u 
     ON u.id = us.user_id;