sql - 使用 WebMatrix/Razor 从两个表中提取信息时使用 INNER JOIN

标签 sql razor webmatrix

我编写了以下代码来从数据库中提取一些信息

@{
var db = Database.Open("StayInFlorida");
var propertyinfo = "SELECT * FROM PropertyInfo WHERE PropertyID='@0'";
var qpropertyinfo = db.QuerySingle(propertyinfo);
var ownerinfo = "SELECT FirstName, LastName FROM OwnerInfo WHERE OwnerID='2'";
var qownerinfo = db.QuerySingle(ownerinfo); 
}
<!DOCTYPE html>

<html>
<head>

</head>
<body>
@qpropertyinfo.PropertyName
@qownerinfo.FirstName
@qownerinfo.LastName
</body>
</html>

在这两个表中,都有一个名为“OwnerID”的列,我希望能够从 PropertyInfo 表中提取 OwnerID,然后从 OwnerID 表中显示该所有者的名字和姓氏。我该如何执行此操作,是否需要使用 INNER JOIN 语句?

我希望它是动态的,这样当我更改为不同的属性时,所有者信息也会更改。

最佳答案

以下查询应该满足您的要求:

SELECT OwnerInfo.FirstName, OwnerInfo.LastName 
FROM OwnerInfo
INNER JOIN PropertyInfo on PropertyInfo.OwnerID = OwnerInfo.OwnerID
WHERE PropertyInfo.PropertyID='@0'

然后,您可以将 PropertyId 作为参数传递,就像您在问题中所做的那样。

关于sql - 使用 WebMatrix/Razor 从两个表中提取信息时使用 INNER JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15449347/

相关文章:

c# - MySql 连接字符串的 Sql 等效项 (C#)

c# - 如何使用选择框扩展身份用户属性

asp.net-mvc - ASP.NET MVC3 AntiForgeryToken

c# - 如何拆分字符串并将其放入 WebMatrix 中的 C# 列表中?

sql - 将不匹配的 ID 插入列的更快方法

mysql - 1054 - 'XXX' 中的未知列 'on clause'

mysql - 在MySQL中编写触发器时出现语法错误

javascript - Razor Dropdown onchange 事件未触发始终未定义

c# - webmatrix c# 和 Razor

c# - 这样的php系统要转成C#怎么办?