2
音声会議を使用したすべてのMSFT Lyncユーザーおよび使用回数を返すようにしています。私はUNIONを使用する必要があります。なぜなら、テーブルにはUser1とUser2がいて、両方とも1つの列に必要な会議に参加したからです。ここでSQL Union with COUNT()関数が期待どおりの結果を返さない
はSQLです:
SELECT U.UserUri,
COUNT(U.UserUri) AS COUNT
FROM SessionDetails AS S
INNER JOIN Users U
ON S.User1Id = U.UserId
WHERE MediaTypes = 48
GROUP BY U.UserUri
UNION
SELECT U.UserUri,
COUNT(U.UserUri) AS COUNT
FROM SessionDetails AS S
INNER JOIN Users U
ON S.User2Id = U.UserId
WHERE MediaTypes = 48
GROUP BY U.UserUri
返された結果は、2点の数の合計で、二回リストに表示されて複数の会議に参加した誰もが持っています。実際には、これを入力した後、User1IdとUser2IDでグループ化する必要があります。ある人が9回の会話を持っていても6件しか入院しなかった場合、2人の異なるグループを作成してUser1 6回とUser2 3回になります。
私はなぜ、どのアイデアが重複UserUriを返すか知っていますか?どのような助けが大いに感謝!
うーんは良いアイデアのように思えるが、それは私にエラー与えている:「無効な列名 『U』」を。 select文でUが好きでないようです。 – tarheels058
実際にはT.Uが嫌いです。最初の選択ステートメントで – tarheels058
このソリューションは機能しません.Union後に集計した場合、UserUriのリストのみであり、それぞれのカウントは1です。 – tarheels058