select u.user_id, us.email_type from users u, user_sub us
where u.user_id = us.user_id
and (US.ALERT_TYPE = 'ARTICLE_ALERT' or US.Alert_Type='FORUM_ALERT' )SQL 语句探讨
user_sub表结构为
user_id, alert_type, email_typeuser_sub表中一个user_id有多个记录,
但users表中一个user_id 只能对应一条记录,两表关联的时候, 就有可能产生多条重复的记录, 我不想用distinct 去掉重复的记录, 有什么办法呢?
除非你在user_sub中一个user_id下的多条纪录有其它字段来区分
比如我们常会加个SEQ来区分,那就取SEQ=1的就行了
(select user_id, alert_type, email_type,row_number() over(partition by user_id order by rowid) rn
from user_sub ) where rn=1
用这个表去与users表关联