让我们说我有一个包含2个表的数据库,如下所示:
书籍(名称,出版商)和
发布者(姓名,电子邮件)
现在我有一本书叫Book A
,其中有publisher a
和publisher a
,电子邮件是sth@gmx.com
。
我希望输出为sth@gmx.com
,即该书的出版商的详细联系方式。
有没有办法做到这一点?我是Sql Server
的新手。所以,也许我错过了一些显而易见的事情。
答案 0 :(得分:0)
要合并结果,应使用JOIN。 在这种情况下:
this.componentBViewChild.functionFoo();
但是您应该在图书应将出版商ID作为外键存储的行上确实使用ID。
答案 1 :(得分:0)
结构如下(根据您的解释):
PRAGMA writable_schema=ON;
VACUUM;
答案 2 :(得分:0)
因此,您选择的是出版该书的出版商的电子邮件,称为A。基于以上两个表和每个表中的两列,您可以在下面的查询中使用,前提是Book中的Publisher和Publisher表中的名称相同。 >
SELECT p.email FROM Publisher p JOIN Book b
ON b.publisher = p.name WHERE b.name = 'A';
答案 3 :(得分:0)
您可以使用inner join
尝试以下操作。
create table Book (Name Varchar(50), Publisher Varchar(50))
insert into Book Values ('Book A', 'publisher a')
Create table Publisher (Name Varchar(50), Email Varchar(50))
insert into Publisher Values('publisher a', 'sth@gmx.com')
select Publisher.Email
FROM Publisher
inner join Book on Publisher.Name = Book.Publisher
where Book.Name = 'Book A' and Publisher.Name = 'publisher a'
您可以了解有关SQL连接here
的信息输出如下所示
Email
-----------
sth@gmx.com
您可以找到实时演示Live Demo