c# - 用于从不同表中检索的 SQL 语法?

标签 c# asp.net mysql sql

您好我有两个表 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/

相关文章:

C# 在二叉树节点中存储链表

mysql - 为什么 MySQL SUM 查询只返回一行?

php - 为什么查询中的额外空格和换行符不好?

用于扩展另一个产品的 C# 命名空间

c# - 在 NSwag 生成的代码中从 WebApi 反序列化数据的问题

c# - 如何在 ASP NET 中通过公共(public) API 通过 HTTP 发布文件?

asp.net - 在 ASP.NET/IIS7 中可以进行多少个并发出站 HttpWebRequest 调用?

c# - AjaxControlToolkit 饼图未正确呈现

java - DataSource 和 ConnectionPoolDataSource 的区别

c# - 如何从不同的线程/类启用计时器