这将是一个菜鸟问题,但我有一个问题,当我想根据另一个表中的外键获取数据时,问题是我无法弄清楚执行此操作的 sql。
我有以下表格:
用户:
login, password, role_id, userDetail_id
角色:
role_id, role_name
用户详细信息:
userDetail_id, name surname
现在我想获取role_id为4的所有用户的姓名和姓氏,并将它们显示在一个asp下拉控件中。
感谢您的帮助,因为它真的让我感到困惑。
你的 sql 将是:
DataTable dt = @"Select name, surname from USER_DETAILS as ud
Inner Join USERS as u on ud.userDetail_id = u.userDetail_id
Inner join ROLES as r on u.role_id = r.role_id
where u.role_id = 4";
然后您可以将数据表绑定到下拉列表:
dropdown.DataSource = dt;
dropdown.DataTextField = "name";
dropdown.DataBind();
SELECT name, surname
FROM USER_DETAILS ud, USERS u
WHERE ud.userDetail_id = u.userDetail_id
AND u.role_id = 4;
SELECT ud.name, ud.surname
FROM user_details ud, roles uroles, users u
WHERE ud.userDetail_id = u.userDetail_id
AND u.role_id = uroles.role_id
AND uroles.role_id = 4