0

2 つのテーブルがあり、1 つはユーザー情報、もう 1 つは oauth 情報です。

ユーザーアカウントごとに複数の oauth ログインを許可しているので、次のような oauth テーブルがあります。

ID|Provider|Identifier|UserID

必要なクエリがわかりませんが、このテーブルを使用して、その UserID を持つすべてのユーザー データを検索する必要があります。

したがって、プロバイダーと識別子の情報がわかっている場合は、その行の UserID を使用して、残りのデータに結合し、ユーザーをログインさせることができます。左結合または同様のものが必要ですか?

4

2 に答える 2

4

Aleft joinは、一致が見つからない場合でも行を返します。ユーザー以外がログオンしても意味がないため、 のinner join方が適切です。Aninner joinはデフォルトの型で、省略できます。

select  *
from    OathLogins ol
join    Users u
on      u.ID = ol.ID
where   ol.Provider = 'Sesame Street'
        and ol.Identifier = 'Bert'
于 2013-07-18T10:04:59.803 に答える
0
select UI.ID, UI.Provider, UI.Identifier, UI.UserID
    from  user_info UI 
    left outer join oauth_info OI on UI.ID=OI.ID

At, last put where cluase like : " where UI.ID=3 " like 
于 2013-07-18T10:26:50.380 に答える