【问题标题】:SQL syntax for retrieving from a different table?用于从不同表中检索的 SQL 语法?
【发布时间】:2011-03-15 19:35:44
【问题描述】:

嗨,我有两个表用户和图片我试图从我的图片表中提取路径名(用户 ID = 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));
        }


    }
}

【问题讨论】:

  • 为什么要将D[ate]O[f]B[irth] 分配给名为Age 的字段?那不一样。
  • 不是,以后会改的

标签: c# asp.net mysql sql


【解决方案1】:

要在一个查询中从两个相关表中获取数据,您可以使用 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

然后,是的,您可以取消注释最后一行。

【讨论】:

  • 'on 子句'中的未知列'User.User'
  • 不,不,它工作得很好,我之前的帖子你做了这个工作,但我有一个问题,指定的 Image1 url 路径没有加载到 asp 页面上的图像控件中?
猜你喜欢
  • 1970-01-01
  • 2018-06-11
  • 1970-01-01
  • 2017-07-09
  • 2019-11-03
  • 1970-01-01
  • 2020-02-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多