0

请有人可以帮我解决这个问题。

我正在做一个工资系统,我被困在两者之间。我想从两个表中选择信息,这是我的表结构:

employee_tbl桌子:

user_id,
emp_id,
surname,
firstname,
email_address,
dob,
gender,
phone_number,
home_address,
appointment_date,
nationality,
gross_salary,
emp_date,
status

other_allowance桌子:

allo_id, 
user_id, 
month_salary, 
feeding_allowance, 
outstation_allowance, 
leave_allowance, 
total_overtime, 
allo_date,

我想要的是显示 ( employee_name, feeding allowance, leave allowance, outstation allowance)

注意:它将显示员工表中的所有员工,然后将那些在该特定月份有津贴的人的津贴放在他们的名字前面,例如显示所有员工,但把津贴放在有津贴的员工前面) 可以说是 2013 年 3 月的月份。

这是我自己的查询:

SELECT * FROM employee_tbl JOIN other_allowance WHERE month_salary = '3.2013'

但它显示每个员工 3 次。

有人可以解释一下你认为我应该做什么,我真的很感激。

4

2 回答 2

0

我不认为给你准备好的查询对你有好处,所以这是方向。您应该在查询中使用 JOIN 运算符。看看这篇文章MySQL JOIN Syntax

于 2013-03-23T10:40:31.710 回答
0

使用这样的查询:

SELECT * 
FROM employee_tbl e
JOIN other_allowance a ON e.user_id = a.user_id
WHERE month_salary = 'xxxx'
于 2013-03-23T10:43:53.590 回答