如何从一个查询中的两个表中检索数据

时间:2014-02-10 09:07:47

标签: mysql vb.net

Try
  With com
    .Connection = con
    .CommandText = "SELECT * FROM attendance WHERE id_no='" & ComboBox1.SelectedValue & "'AND date BETWEEN '" & startDate.Text & "' AND '" & endDate.Text & "';"

  End With

  Catch ex As Exception
     MsgBox(ex.Message)

我正在尝试从工资单和考勤表中获取数据

3 个答案:

答案 0 :(得分:0)

试试这个

"SELECT A.*,P.* 
FROM Attendance A JOIN payroll P ON A.id_no = P.id_no
WHERE A. id_no='" & ComboBox1.SelectedValue & "'AND 
A.date BETWEEN '" & startDate.Text & "' AND '" & endDate.Text & "';"

答案 1 :(得分:0)

首先,如果这不是用于问题目的的简化语法,请研究SQL注入,因为您实际上不应该使用尚未清理的内联参数编写数据库查询。

您的问题中没有提供足够的信息,但您可以在查询中将表连接在一起,根据您的要求,您有不同类型的JOIN。请查看this page in the manual

答案 2 :(得分:0)

有两种方法可以解决这个问题。您可以使用JOIN或SUBQUERY 首先是标准的JOIN语法:

SELECT *
FROM [table1]
JOIN [table2] ON [table1].[column] = [table2].[column]

和子查询:

SELECT *
FROM [table1]
WHERE [table1].[column] IN (
    SELECT [table2].[column]
    FROM [table2]
}

确保两个表中的[column]值相互匹配

这些只是简单的示例,但您可以搜索有关这些技术之一的更多信息