如何将 T-SQL 存储过程写入来自三个数据库表的 return 数据
How to write a T-SQL Stored Procedure to return data from three database tables
我必须显示来自以下三个 table 的数据('dbo.BookAuthor' 是映射 table)。
我需要编写一个存储过程以从存储过程中检索数据并将该数据填充到 DataGridView,如下所示。
DataGridView to display above data
请帮助我编写 SQL 查询以通过匹配 ID s 使用中间 BookAuthor table 从 Book 和 Author tables 检索数据。
我的数据库就是这样设计的。图书 table 的主键为 Book_ID
。
作者 table 的主键也为 Author_ID
。
因为每本书可以由多个作者撰写,所以我放置了另一个 table (BookAuthor
table) 来将每本书与其作者映射。
因此,BookAuthor
table 将 Book_ID
和 Author_ID
作为来自书籍 table 和作者 table 的外键,包括它自己的主键 BookAuthor_ID
。
谁能告诉我 SQL 检索我拥有的每本书的 Book_Title 和 Author_Name(s) 的查询。
这是非常基础的SQL。
我建议您阅读 sql 教程。
你需要的是 JOIN
.
试试这个:
SELECT [Name], [Title]
FROM Book
INNER JOIN BookAuthor ON(Book.Book_Id = BookAuthor.Book_Id)
INNER JOIN Author ON(BookAuthor.Author_Id = Author.Author_Id)
此外,对于以后的问题,请将您的表格描述为使用 DDL statements, and provide sample data using DML statements if needed. desired output is better described in the question's text as a code block. for more information, please read how to ask.
我必须显示来自以下三个 table 的数据('dbo.BookAuthor' 是映射 table)。
我需要编写一个存储过程以从存储过程中检索数据并将该数据填充到 DataGridView,如下所示。
DataGridView to display above data
请帮助我编写 SQL 查询以通过匹配 ID s 使用中间 BookAuthor table 从 Book 和 Author tables 检索数据。
我的数据库就是这样设计的。图书 table 的主键为 Book_ID
。
作者 table 的主键也为 Author_ID
。
因为每本书可以由多个作者撰写,所以我放置了另一个 table (BookAuthor
table) 来将每本书与其作者映射。
因此,BookAuthor
table 将 Book_ID
和 Author_ID
作为来自书籍 table 和作者 table 的外键,包括它自己的主键 BookAuthor_ID
。
谁能告诉我 SQL 检索我拥有的每本书的 Book_Title 和 Author_Name(s) 的查询。
这是非常基础的SQL。
我建议您阅读 sql 教程。
你需要的是 JOIN
.
试试这个:
SELECT [Name], [Title]
FROM Book
INNER JOIN BookAuthor ON(Book.Book_Id = BookAuthor.Book_Id)
INNER JOIN Author ON(BookAuthor.Author_Id = Author.Author_Id)
此外,对于以后的问题,请将您的表格描述为使用 DDL statements, and provide sample data using DML statements if needed. desired output is better described in the question's text as a code block. for more information, please read how to ask.