SQL - 选择属于User" X"的项目列表。

时间:2014-04-04 14:07:54

标签: sql

我有两个表 - USERS和TASK表。假设我有两个用户“X”和“Y”,而在任务中,我有两个“X”任务和一个“Y”任务。如何选择仅属于X的任务?困难的部分 - 我想在Android APP上使用它,以便登录的用户将获得“他的”任务列表。 (不要担心连接,而只关注选择“X”用户任务的选择部分!)

在我看来,我会在TASK表上放置一个“user_id”,所以每次用户“添加”一个新任务时,我都会知道谁是任务,但我不知道如何检查谁是用户已登录。

这是正确的做法吗?我正在寻找,但到目前为止没有努力/具体的答案。

谢谢!

2 个答案:

答案 0 :(得分:2)

Tasks需要某种方式与用户相关,所以是的,user_id列是个好主意。至于如何在SQL中加入它们只是:

select
  t.*
from
  Users u
  inner join Tasks t on u.user_id = t.user_id
where
  u.user_name = 'X'

答案 1 :(得分:2)

由于您在任务中拥有user_id,因此您甚至不需要加入。你可以简单地

select * 
from   tasks 
where  user_id = 123

听起来我不需要查询帮助,但需要识别当前用户。这是一个完全不同的故事。