SQL查询与2个表的联接
我无法使用以下表格进行查询,这些表格将从Note table中查找所有备注,Note table由任何登录用户所在公司的用户创建SQL查询与2个表的联接,sql,join,Sql,Join,我无法使用以下表格进行查询,这些表格将从Note table中查找所有备注,Note table由任何登录用户所在公司的用户创建 注意: note_id (int), note_text (varchar), created_by (int) 用户: user_id (int), company_id (int) 登录用户的用户id作为参数传递给查询 select n.* from Note n where n.created_by in ( select u1.user_id f
注意
:
note_id (int),
note_text (varchar),
created_by (int)
用户
:
user_id (int),
company_id (int)
登录用户的用户id作为参数传递给查询
select n.* from Note n where
n.created_by in (
select u1.user_id from User u1 inner join User u2
on u1.company_id=u2.company_id and u2.user_id = :LOGGED_IN_USER_ID*
)
我想从in创建的表notes
中提取注释(其公司id=登录用户的公司id的所有用户的用户id)
请帮我解释一下这个问题。看起来很直截了当,但就是达不到它的结尾。我不确定登录用户是表还是其他对象,但如果它是一个包含您引用的列的表,像这样的连接将起作用
select note_text
from Note n
JOIN User u ON u.user_id = n.created_by
JOIN LOGGED_IN_USER lin ON lin.user_id = u.user_id
and lin.company_id = u.company_id
我不确定登录的用户是一个表还是另一个对象,但如果它是一个包含您引用的列的表,像这样的连接将起作用
select note_text
from Note n
JOIN User u ON u.user_id = n.created_by
JOIN LOGGED_IN_USER lin ON lin.user_id = u.user_id
and lin.company_id = u.company_id
您可能需要一个外键,以便将用户id添加到Notes。并使用内部连接u可能需要一个外键,以便将用户id添加到Notes中。并使用内部连接如果我没有误解您的问题,请尝试这种方式
SELECT note_text
FROM Note n
INNER JOIN User u ON u.user_id = n.created_by
WHERE n.created_by= (select u.user_id from User where company_id=LOGGED_IN_USER LIMIT 1 )
如果我没有误解你的问题,试试这个方法
SELECT note_text
FROM Note n
INNER JOIN User u ON u.user_id = n.created_by
WHERE n.created_by= (select u.user_id from User where company_id=LOGGED_IN_USER LIMIT 1 )
谢谢Vinnie和所有人的回复。我终于成功地解决了这个问题。LOGGED_IN_USER_ID只是一个数字参数,应该传递给查询
select n.* from Note n where
n.created_by in (
select u1.user_id from User u1 inner join User u2
on u1.company_id=u2.company_id and u2.user_id = :LOGGED_IN_USER_ID*
)
再次感谢。感谢Vinnie和所有人的回复。我终于成功地解决了这个问题。LOGGED_IN_USER_ID只是一个数字参数,应该传递给查询
select n.* from Note n where
n.created_by in (
select u1.user_id from User u1 inner join User u2
on u1.company_id=u2.company_id and u2.user_id = :LOGGED_IN_USER_ID*
)
再次感谢。所以您需要三张表:Note、User和User1。用户和用户1将在公司ID上加入。对于SQL,您尝试了什么?并不是说它太重要了,而是你在用什么数据库管理程序?这就是——是的,就像Vinnie发布的……所以您需要三个表:Note、User和User1。用户和用户1将在公司ID上加入。对于SQL,您尝试了什么?并不是说它太重要了,而是你在用什么数据库管理程序?这是刚刚进来的——是的,就像维尼贴的。。。。