您好我有两个表 User 和 Pictures 我试图从我的图片表 (userid=1) 中提取路径名在与 pk 相关的两个表中是相同的,但我不确定如何从用户表中选择名字等并从中选择图片路径图片表?
我还想知道如果我使用注释掉的行,img 路径是否会被正确设置?
OdbcCommand cmd = new OdbcCommand("SELECT User.FirstName, User.SecondName, User.Aboutme, User.DOB, Pictures.picturepath FROM User LEFT JOIN Pictures ON User.UserID = Pictures.UserID WHERE User.UserID=1", cn);
OdbcDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Name.Text = String.Format("{0} {1}", reader.GetString(0), reader.GetString(1));
Aboutme.Text = String.Format("{0}", reader.GetString(2));
Age.Text = String.Format("{0}", reader.GetString(3));
Image1.ImageUrl = String.Format("{0}", reader.GetString(4));
}
}
}
最佳答案
要在一个查询中从两个相关表中获取数据,您可以使用 JOIN:
SELECT
User.FirstName,
User.SecondName,
User.Aboutme,
User.DOB,
Picture.PicturePath
FROM User
LEFT JOIN Pictures
ON User.UserID = Pictures.UserID
WHERE User.UserID=1
然后,是的,您可以取消对最后一行的注释。
关于c# - 用于从不同表中检索的 SQL 语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5316992/