【发布时间】:2014-04-01 19:51:58
【问题描述】:
问题 - 假设我有 2 张桌子。
表1 - 名称是permission_list,列是ID(唯一ID)、col_ID、user_ID
表 2 - 名称为 list_entries,列为 ID(唯一 ID)、标题、描述、状态
我想选择表 2 中状态为“public”的所有行,以及表 2 中的 ID 显示在表 1 中(列 col_ID 下)的表 2 中的所有行,如果 user_ID在表 1 中匹配某个值。因此,任何公开的内容,或该特定用户在权限表下列出的任何内容。此查询还将删除重复项 - 如果用户在他们的 permissions_list 中列出了一个公共条目,它就不会出现两次。
希望这是有道理的!
【问题讨论】:
-
示例代码:
SELECT table1.* , table2.* FROM table1 , table2 WHERE table1.id=3490 AND table2.value>500 -
或者,更具可读性的 JOIN... SELECT table1.* , table2.* FROM table1 join table2 ON table1.id=3490 AND table2.value>500