ASP.Net C# - 数据列表不够复杂 - 从二级表添加项目数据
ASP.Net C# - Datalist Not Complex Enough - Adding Item Data From Secondary Tables
我有一个从数据库 table 生成的数据列表,查询是这样的。
SELECT Product_Type, Unit_Type, Image FROM Products WHERE ProductID = 1 Or ProductID = 2 OR ProductID = 3... etc.
我想为数据列表中的每个项目显示一个饼图,图表依赖于来自另一个 table 的数据。这个secondarytable里面的数据也可以用ProductID来选择。
我的问题是数据列表似乎是 运行 从单个 SELECT 到 table。有没有办法让我指示数据列表从数据列表中的每个项目的辅助 table 检索补充数据?
我认为您需要阅读有关如何加入 tables 的内容,这里有一篇文章可以帮助您入门:Join Syntax
下面是一个简单的连接示例,用于获取有关产品的更多信息。我们真的不太了解 table 和其他数据,但希望这能让您入门。在此示例中,您可以看到如何根据 prodcut sales table:
中的外键获取销售额
CREATE TABLE #product
(
productId INT PRIMARY KEY,
description VARCHAR(50) NOT NULL
)
CREATE TABLE #productSales
(
salesId INT PRIMARY KEY,
productId INT NOT NULL,
amount INT NOT NULL
)
INSERT INTO #product VALUES(1, 'Boat')
INSERT INTO #product VALUES(2, 'Raft')
INSERT INTO #product VALUES(3, 'Canoe')
INSERT INTO #productSales VALUES(1, 1, 10)
INSERT INTO #productSales VALUES(2, 1, 89)
INSERT INTO #productSales VALUES(3, 2, 410)
INSERT INTO #productSales VALUES(4, 2, 10997)
INSERT INTO #productSales VALUES(5, 2, 3)
INSERT INTO #productSales VALUES(6, 2, 98)
INSERT INTO #productSales VALUES(7, 3, 14)
SELECT p.productId, p.description, ps.amount from #product p
INNER JOIN #productSales ps on
p.productId = ps.productId
WHERE p.productId IN (1,2,3)
输出:
1 Boat 10
1 Boat 89
2 Raft 410
2 Raft 10997
2 Raft 3
2 Raft 98
3 Canoe 14
我有一个从数据库 table 生成的数据列表,查询是这样的。
SELECT Product_Type, Unit_Type, Image FROM Products WHERE ProductID = 1 Or ProductID = 2 OR ProductID = 3... etc.
我想为数据列表中的每个项目显示一个饼图,图表依赖于来自另一个 table 的数据。这个secondarytable里面的数据也可以用ProductID来选择。
我的问题是数据列表似乎是 运行 从单个 SELECT 到 table。有没有办法让我指示数据列表从数据列表中的每个项目的辅助 table 检索补充数据?
我认为您需要阅读有关如何加入 tables 的内容,这里有一篇文章可以帮助您入门:Join Syntax
下面是一个简单的连接示例,用于获取有关产品的更多信息。我们真的不太了解 table 和其他数据,但希望这能让您入门。在此示例中,您可以看到如何根据 prodcut sales table:
中的外键获取销售额CREATE TABLE #product
(
productId INT PRIMARY KEY,
description VARCHAR(50) NOT NULL
)
CREATE TABLE #productSales
(
salesId INT PRIMARY KEY,
productId INT NOT NULL,
amount INT NOT NULL
)
INSERT INTO #product VALUES(1, 'Boat')
INSERT INTO #product VALUES(2, 'Raft')
INSERT INTO #product VALUES(3, 'Canoe')
INSERT INTO #productSales VALUES(1, 1, 10)
INSERT INTO #productSales VALUES(2, 1, 89)
INSERT INTO #productSales VALUES(3, 2, 410)
INSERT INTO #productSales VALUES(4, 2, 10997)
INSERT INTO #productSales VALUES(5, 2, 3)
INSERT INTO #productSales VALUES(6, 2, 98)
INSERT INTO #productSales VALUES(7, 3, 14)
SELECT p.productId, p.description, ps.amount from #product p
INNER JOIN #productSales ps on
p.productId = ps.productId
WHERE p.productId IN (1,2,3)
输出:
1 Boat 10
1 Boat 89
2 Raft 410
2 Raft 10997
2 Raft 3
2 Raft 98
3 Canoe 14