Mysql 从两个表中提取数据,其中数据是否存在于其他表中

Mysql 从两个表中提取数据,其中数据是否存在于其他表中,mysql,Mysql,我有两个表用户和出席,而登录我想检查今天的出席是否存在 tbl\u用户 user_id name username password tbl\U出席人数 att_id user_id FK from user create_date timestamp 如果用户首次登录,则显示出席人数=0,否则为1。 我试过这个: select u.*,ifnull(a.attendance_id,0) as attandance from users u, attendance a where u.u

我有两个表用户和出席,而登录我想检查今天的出席是否存在

tbl\u用户

user_id
name
username
password
tbl\U出席人数

att_id
user_id FK from user
create_date timestamp
如果用户首次登录,则显示出席人数=0,否则为1。 我试过这个:

select u.*,ifnull(a.attendance_id,0) as attandance 
from users u, attendance a 
where u.username = "emp1" and u.password = "password@123" 
and role <> 'customer';
选择u.*,ifnull(a.attention\u id,0)作为附件
来自用户u,出席人数a
其中u.username=“emp1”和u.password=”password@123" 
以及"顾客"的角色;;

您可以改用子查询

SELECT A.*, IFNULL(SELECT 1 
                   FROM tbl_attendance B 
                   WHERE B.user_id=A.user_id 
                    AND DATE(B.create_date)=CURRENT_DATE LIMIT 1, 0) attendance
FROM tbl_user A 
WHERE A.username="emp1" AND A.password="password@123";

我在这两个表的任何一个表中都看不到任何角色列,因此它不应该出现在您的查询中,否则您可以像使用它一样使用它。

您能告诉我们您尝试了什么吗?选择u.*,ifnull(a.attention_id,0)作为用户u的附件,attention a where u.username=“emp1”和u.password=”password@123"角色“客户我不知道如何设置时间”您是否真的在数据库中存储纯文本密码?不要那样做!。相反,先散列密码,然后存储它。