【问题标题】:How to access three tables from database如何从数据库中访问三个表
【发布时间】:2021-01-06 12:56:07
【问题描述】:

我只知道如何访问 2 个不同表中的数据,但不知道如何访问 3 个表。我该怎么做?提前致谢

rs.Open("select tblEmp.empID, tblEmp.gn, tblSalary.salary from tblEmp inner join tblSalary on tblEmp.EmpID = tblSalary.EmpID" & "tblPosition.posTitle, tblPosition.posID = tblSalary.posID", con, 3, 3)
    Do Until rs.EOF
        With Me.lv
            .Items.Add(rs.Fields("empID").Value)
            .Items(i).SubItems.Add(rs("gn").Value)
            .Items(i).SubItems.Add(rs("posTitle").Value)
            .Items(i).SubItems.Add(rs("salary").Value)

        End With
    Loop

【问题讨论】:

  • 请花时间努力学习如何使用本网站,不要浪费我们的时间发送垃圾邮件标签。您使用的所有标签都与此问题无关。这纯粹是一个 SQL 问题。您可以在 SQL 中加入任意数量的表,因此您应该去做一些 SQL 研究并学习如何操作。它与您已经拥有的基本相同,但在每张桌子上都重复了。信息不难找到。
  • 只需添加另一个联接。并且因为这显然不是与基本视觉相关的问题,所以删除 vb 标记并添加适当的 DBMS 标记。而且 - 使用大写字母(即使仅在标题中)意味着大喊大叫:(

标签: sql inner-join


【解决方案1】:

类似

SELECT t1.FIELDx, t2.FIELDy, t3.FIELDz
  FROM TABLE1 t1
  INNER JOIN TABLE2 t2
    ON t2.KEY1 = t1.KEY1
  INNER JOIN TABLE3 t3
    ON t3.KEY2 = t2.KEY2

应该为你做。

【讨论】:

  • 我得到一个 'System.Runtime.InteropServices.COMException: 'FROM 子句中的语法错误。'尝试此操作时出错
  • 您问题中的代码inner join tblSalary on tblEmp.EmpID = tblSalary.EmpID" & "tblPosition.posTitle, tblPosition.posID = tblSalary.posID" 对我来说看起来不对——也许这应该是inner join tblSalary on tblEmp.EmpID = tblSalary.EmpID= tblSalary.posID AND tblPosition.posTitle AND tblPosition.posID = tblSalary.posID"?这似乎仍然以一种奇怪的方式混合表格,但我不知道你在这里想要做什么,所以我很难评估这一点。
  • 我的工作代码仅来自select tblEmp.empID, tblEmp.gn, tblSalary.salary from tblEmp inner join tblSalary on tblEmp.EmpID = tblSalary.EmpID但那只有 2 个表。我需要 3 个
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-05
  • 1970-01-01
  • 2017-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多