샘플 그룹 채팅 데이터베이스 쿼리
마지막으로 수정된 항목: 2011-01-27
이 섹션에는 그룹 채팅 데이터베이스에 대한 샘플 쿼리가 포함됩니다.
특정 날짜 이후에 가장 활동이 많은 대화방의 목록을 가져오려면 다음 예를 사용합니다.
SELECT nodeName as ChatRoom, COUNT(*) as ChatMessages
FROM tblChat, tblNode
WHERE channelId = nodeID AND dbo.fnTicksToDate(chatDate) > '1/1/2011'
GROUP BY nodeName
ORDER BY ChatMessages DESC
특정 날짜 이후에 가장 활동이 많은 사용자 목록을 가져오려면 다음 예를 사용합니다.
SELECT prinName as Name, count(*) as ChatMessages
FROM tblChat, tblPrincipal
WHERE prinId = userId AND dbo.fnTicksToDate(chatDate) > '1/1/2011'
GROUP BY prinName
ORDER BY ChatMessages DESC
"Hello World"가 포함된 메시지를 전송한 모든 사용자의 목록을 가져오려면 다음 예를 사용합니다.
SELECT nodeName as ChatRoom, prinName as Name, content as Message
FROM tblChat, tblNode, tblPrincipal
WHERE channelId = nodeID AND userId = prinID AND content like '%Hello World%'
특정 사용자에 대해 그룹 구성원 자격의 목록을 가져오려면 다음 예를 사용합니다.
SELECT prinName as Name
FROM tblPrincipalAffiliations as pa, tblPrincipal
where principalID = 7 and affiliationID = prinID
Jane Dow라는 사용자가 직접 구성원으로 있는 모든 대화방의 목록을 가져오려면 다음 예를 사용합니다.
SELECT DISTINCT nodeName as ChatRoom, prinName as Name
FROM tblPrincipalRole, tblPrincipal, tblNode
WHERE prinRoleNodeID = nodeID AND prinRolePrinID = prinID AND prinName = 'Jane Dow'
사용자가 수신한 초대 목록을 가져오려면 다음 예를 사용합니다.
SELECT prinName
,nodeName
,invID
,createdOn
FROM tblPrincipalInvites as inv, tblPrincipal as p, tblNode as n
where inv.prinID = 5 AND inv.prinID = p.prinID and inv.nodeID = n.nodeID
ORDER BY invID DESC