交叉检查两个表

时间:2019-03-11 12:19:01

标签: php mysql

我的数据库中有两个表,一个表包含员工的出勤情况,另一个表包含员工的工资单。为了使一个雇员的名字可以被收入,这两个表都存在,我的问题是如何编写一个使用雇员的id和列出的名字在两个表中查找的程序……发现使用php和mysql

出勤表

id   name        
1    mark

2    jhon

工资表

id     name      salary
1      mark      20000$
2      jhon      3999$

2 个答案:

答案 0 :(得分:1)

您可以使用联接查询从那些表中获取数据。 如果您不知道如何使用它,请查看以下链接 SQL Join tutorial

答案 1 :(得分:1)

也许您可以使用JOIN。在这种情况下,INNER JOIN应该可以解决问题。但是,还有其他类型的联接。

Inner join

从表A和表B中选择满足连接条件的所有记录。

Left join

从表A中选择所有记录,并从表B中选择满足连接条件的记录(如果有的话)。

Right join

从表B​​中选择所有记录,并从表A中选择满足连接条件的记录(如果有的话)。

Full join

从表A和表B中选择所有记录,无论是否满足连接条件。

在这种情况下,您可以像这样使用INNER JOIN

SELECT attendance.name, payroll.salary FROM attendance INNER JOIN payroll ON attendance.name = payroll.name

这将选择名称和薪水(如果存在)。

也许您应该将密钥名称更改为数据库中的密钥名称

  

为记录起见,从http://www.sql-join.com/sql-join-types中获得了图像