0
SELECT  `attendence`.`u_id` ,
        DATE_FORMAT(date,'%d-%m-%Y') as  `date`,
        `attendence`.`checkin`, 
        `attendence`.`checkout`,
         `users`.`firstname`,
         `users` .`lastname`
 FROM  `attendence`
 INNER JOIN  `users` ON  `attendence`.`u_id` = `users`.`u_id`
 WHERE  DATE_FORMAT( DATE,  '%Y-%m' ) =  '$combined' AND `u_id`='$u_id';

请帮助伙计们

当我删除 AND u_id='#u_id 它可以工作但返回所有员工详细信息'

4

3 回答 3

3

您需要指定该列应u_id来自哪个表,因为两个表都有此列。

AND `attendence`.`u_id`='$u_id';

或者

AND `users`.`u_id`='$u_id';

选择一个满足您的需求。无论如何,这两个函数中的任何一个都是相同的,因为它们是两个表的链接列。

于 2012-11-07T11:21:37.013 回答
1

代替

`u_id`='$u_id';

经过

`users`.`u_id`='$u_id';
于 2012-11-07T11:21:38.277 回答
0

如果您u_id在查询中使用多个表,则需要指定u_id要使用的表。

在你的 where 子句中使用它:

`attendence`.`u_id` = '$u_id';
于 2012-11-07T11:21:58.837 回答