SQL クエリを作成して、別のテーブルの個別の上位 6 値内の個別の値の結果を取得するにはどうすればよいですか? 私が持っているのはトレード ショー セッションと 3 つのテーブルです。session、tracks、および sessiontracks (複合テーブル)。セッションの上位 6 つの個別のレコードを取得できますが、セッション内に繰り返しトラックがあります。トラックを一度だけ表示する必要があります。以下は、ランダムに異なる 6 つのレコード (セッション) を取得するための基本的なクエリです。
select distinct top 6(s.sessionid) sessionid
,s.title
,s.starttime
,t.showid
,trackid
,t.track
,st.sessiontracksid
,NEWID() as randomCheck
from session s
,tracks t
,sessiontracks st
where st.sessionid = s.sessionid
and st.tracksid = t.trackid
and s.showid = 43
order by NEWID()
,s.sessionid
,s.starttime desc