我有两个表EVENTS和USER
EVENTS有字段“id”,“name”,“date”
USER有1个字段“id”
我希望SQL查询只获取USER中具有匹配ID的事件的所有EVENT名称。换句话说,从USER获取所有id,在EVENTS中找到匹配的id,显示具有这些id的事件的名称。
具体来说,我想在html中显示一个包含所有这些名称的列表
谢谢!
答案 0 :(得分:1)
您需要为此使用内部联接,为此,您的SQL应如下所示:
SELECT events.id, name, user.id
FROM events
INNER JOIN user ON events.id = user.id;
我还建议不要使用大写字母来表格等。不是因为它有任何技术原因,只是它使查询等更具可读性。
希望这有帮助:)
答案 1 :(得分:0)
使用exists
:
select e.*
from events e
where exists (select 1 from user u where u.id = e.id);
答案 2 :(得分:0)
我想要一个SQL查询来获取所有事件的EVENT名称 在USER中具有匹配ID的内容。
create table EVENTS (id number,name varchar2(20), date1 date);
create table user1(id number);
select u.id,e.name
from
USER1 u
INNER JOIN
EVENTS e
ON u.id = e.id;
换句话说,从USER中获取所有ID,找到匹配的ID' s 在EVENTS中,显示具有这些ID
的事件的名称
select u.id,e.name
from
USER1 u
LEFT OUTER JOIN
EVENTS e
ON u.id = e.id;
答案 3 :(得分:0)
你可以使用WHERE语句直接使用它
select u.id,e.name
from
USER u,EVENTS e
where u.id = e.id;