我有两个表:谁包含这些字段:
gmdc_employee
file_id company_id employee_id employee_name file_description file_date file_name folder_access upload_date confirmation
1 20111253 20080407 Mariel file1 2000-01-01 agent_masterlist.xls documents/20111253/ 2011-05-16 Pending
2 20112301 20864125 Keisha file2 2000-02-01 auto_lapsed.xls documents/20112301/ 2011-05-16 Pending
11 20111253 65513215 Rovy file15 2008-01-01 attendancesheet.xls documents/20111253/ 2011-06-01 Pending
gmdc_user
company_id company_name employee_id employee_name username password_clear password_hash login_number last_login
25014462 NCST 20132248 Danica ncst ncst c7b080d11d6766a27c02591f74b2ea4d 3 2011-05-23 11:25:03
20112301 EAC 20113318 Emilio eac each 933dd8674c563081260867dfa95b5e74 4 2011-05-23 11:52:58
20111253 DLSU 20080040 John dlsu dasma 3c26c824914144d0addf0ceb850ed78a 15 2011-06-01 10:45:32
这是我第一次需要在我的 gmdc_employee 表中获取项目时使用的查询:'%$search%' 是我搜索按钮的名称,'$listname% ' 是我的面板选项卡名称(A-Z 列表):
select *
from gmdc_employee
where employee_name like '%$search%'
AND employee_name like '$listname%'
问题出在我的搜索按钮上。以前,我的搜索按钮只会搜索 employee_name(我上面的代码是我使用的有效代码)。但不幸的是,情况发生了变化 :( 有人问我除了搜索 employee_name(在 gmdc_employee 表中找到)之外,用户还可以搜索 employee_id(在 gmdc_employee 中找到)和 company_name(在 gmdc_user 中找到),但我不知道该怎么做:( 我还没有从学校学到有关连接两个表的知识,尽管我学会了一种方法并进行了尝试。不幸的是它产生了错误的结果。那么我可以举个例子吗?
如果用户搜索公司名称 DLSU,输出应如下所示:
employee_id employee_name title file_date status confirmation
20080407 Mariel file1 2000-01-01 Pending delete //delete is a link
65513215 Rovy file15 2008-01-01 Pending delete
至于你所看到的,它搜索并回显公司名称“DLSU”下的文件我希望有人能在这里帮助我 :( 我已经尝试了所有的方法,但没有像预期的那样工作。
这是我尝试使用的产生错误输出的东西。 :( 它回显了所有需要的数据,而不是在只有搜索到的 company_name 信息应该输出的情况下:
select
a.employee_id,
a.employee_name,
a.file_description,
a.file_date,
a.confirmation
from
gmdc_employee AS a
JOIN gmdc_user AS b
WHERE
a.employee_name like'%'
AND a.employee_id like '%'
AND b.company_name like 'DLSU'
最佳答案
应返回您在问题中提供的数据的查询是:
SELECT `e`.`employee_id` ,
`e`.`employee_name` ,
`e`.`title` ,
`e`.`file_date` ,
`e`.`status` ,
`e`.`confirmation` AS "status"
FROM `gmdc_employee` `e`
JOIN `gmdc_user` `u` ON ( `u`.`company_id` = `e`.`company_id` )
WHERE `u`.`company_name` LIKE "DLSU"
关于php - 选择两个表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6209443/