我有两个表,它们是在azure数据库管理器中索引的。所以我把外键放在第二张桌子上。例如,我的桌子
OrderTable (OrderId,OrderDate,CustomerId) /CustomerId是我的外键
客户表( CustomerId,CustomerName,.)
所以我只想要一个这样的查询:
Select *
From OrderTable o1,CustomerTable c1
Where c1.CustomerId=o1.CustomerId我使用了microsoft示例TodoItems,并且我已经可以在这样的一个表上进行查询:
items = await todoTable
.Where(todoItem => todoItem.Date >= DateTime.Now)
.ToCollectionAsync();
.ToListAsync();所以,在我的应用程序中,我得到了两个表,有什么选项可以像上面那样查询连接的表吗?
发布于 2014-02-14 05:16:14
创建一个像Rikalous指出的视图。您可以通过单击windows azure门户上的Sql数据库来做到这一点。选择您的服务器,然后单击位于右下角仪表板页面上的"Manage“。
登录后,单击“新建查询”,然后键入sql代码创建视图。
CREATE mySchema.myView AS
SELECT * FROM Table t1 INNER JOIN OtherTable t2 ON t1.a=t2.b创建视图后,返回到。转到移动服务并创建一个新表。使用视图的名称创建表,系统将检测视图并将其呈现给您。您将看到不存在默认列,也不会显示任何数据。但是您可以像其他表一样查询它,还可以修改它的insert/update/read脚本。
*重要:再次检查您的视图是否创建在正确的架构上。另外,在添加移动服务上的表后,在服务器上没有创建任何表之后,还要进行双重检查。
发布于 2013-11-13 09:17:27
您可以在LINQ中执行联接,但在您的情况下,可能更容易创建一个执行连接的视图,然后使用LINQ从中进行选择。
此外,您应该避免像以前那样使用旧的联接语法--它在某些时候将不再受支持--并使用内部联接子句,即
SELECT * FROM OrderTable o1 INNER JOIN CustomerTable c1
ON c1.CustomerId = o1.CustomerIdhttps://stackoverflow.com/questions/19946190
复制相似问题