SQL nyilatkozat több értéket tartalmazó Where klauzula használatával

Translate

Van egy táblázatom, amely több sorból áll, a következő mezőkkel:

PersonName SongName Status

Többszörös kijelölési listából kiválasztott neveket szeretnék használni, amelyekhez lekérhetem az értékeket, majd megadhatok egy ahol záradékot, hogy megmutassa azokat a dalneveket, amelyeket a kiválasztott emberek mind lejátszhatnak, ezért az állapot teljes.

Például:

 PersonName      SongName    Status 
 Holly           Highland    Complete
 Holly           Mech        Complete 
 Ryan            Highland    Complete

Ha a listából kiválasztom Holly-t és Ryan-t, és megnyomom a gombot, akkor a lekérdezésnek csak a Highland-ot kell mutatnia, mivel ezt mindketten tudják.

This question and all comments follow the "Attribution Required."

Minden válasz

Translate

Próbáld ezt:

select songName from t
where personName in ('Ryan', 'Holly')
group by songName
having count(distinct personName) = 2

A birtoklás számának meg kell egyeznie az emberek számával. Ha arra is szükség van, hogy a Status legyenCompletehasználd eztwherezáradék az előző helyett:

where personName in ('Ryan', 'Holly') and status = 'Complete'
Forrás
sll
Translate
SELECT PersonName, songName, status
FROM table
WHERE name IN ('Holly', 'Ryan')

Ha paraméterezett tárolt eljárást használ:

  1. Vesszővel elválasztott karakterláncban adja át
  2. A speciális függvény segítségével vesszővel elválasztott karakterláncot oszthat fel táblázatérték-változóra
  3. HasználatINNER JOIN ON t.PersonName = newTable.PersonNameolyan táblaváltozóval, amely neveket tartalmaz
Forrás
Translate
Select t1.SongName
From tablename t1
left join tablename t2
 on t1.SongName = t2.SongName
    and t1.PersonName <> t2.PersonName
    and t1.Status = 'Complete' -- my assumption that this is necessary
    and t2.Status = 'Complete' -- my assumption that this is necessary
    and t1.PersonName IN ('Holly', 'Ryan')
    and t2.PersonName IN ('Holly', 'Ryan')
Forrás
Leave a Reply
You must be logged in to post a answer.
A szerzőről