我有两张table叫 ARTICLE
以及 SAVE
. ARTICLE
表包含整个项目数据。以及 SAVE
表之间有关系 email
以及 seq
的 ARTICLE
.
ARTICLE
seq email title content
1 fm@x.y ya hah
2 ch@x.y ho hihi
3 ch@x.y yo hoho
SAVE
seq email article_seq
3 ch@x.y 1
所以,如果你用你的帐户保存第三篇文章( a@x.y
), SAVE
表将更改为。。。
SAVE
seq email article_seq
3 ch@x.y 1
4 a@x.y 3
我想创造一个 SELECT
)在文章调用中增加一列 is_saved
. 我希望这个结果 SELECT
:
当我以身份登录时 ch@x.y
```
RESULT
seq email title content is_saved
1 fm@x.y ya hah 1
2 ch@x.y ho hihi 0
3 ch@x.y yo hoho 0
当我以身份登录时 `fm@x.y` ```
RESULT
seq email title content is_saved
1 fm@x.y ya hah 0
2 ch@x.y ho hihi 0
3 ch@x.y yo hoho 0
所以,我需要 JOIN
这两张表基于 ARTICLE
我可能需要 IF/ELSE
条件。我该怎么做?
4条答案
按热度按时间7rtdyuoh1#
我用…解决了这个问题。。。
fiei3ece2#
首先,选择所有项目(由用户),并对项目seq id进行左联接。需要左联接来区分已保存(行存在)和未保存(行不存在)。
看起来你也有多余的人
email
存在于两个表中。wztqucjr3#
一
left join
是一种自然的表达方式:这假设
seq
/email
组合最多只能出现一次save
.nfs0ujit4#
你好像想要
EXISTS
: