0
select count(distinct user1_.Id) as col_0_0_ from [FriendCloseness] friendclos0_ inner join [User] user1_ on friendclos0_.User_id=user1_.Id where dateadd(d, 0, datediff(d, 0, friendclos0_.LastUpdate))[email protected] and friendclos0_.IsInvited=1 and user1_.IsDeleted=0 and [email protected]
테이블 사용자가 FriendCloseness FriendClossness 필드 LASTUPDATE와 쿼리, IsInvited, 사용자 필드에 isDeleted, 섹스에 가입이 쿼리를 여기서 쿼리
사용자 아이디 (기본 키) 와 관련된
테이블 사용자 구조 섹스,
FriendClossness 아이디, isDeleted를, (기본 키가 자동으로 기본 키에 설정된 인덱스를 DBMS 것인가?) LASTUPDATE (DATETIMEOFFSET), IsInvited, USER_ID (외래 키)
I을 어떤 필드를 색인화해야합니까? 색인을 생성해야하며 날짜 만 저장하는 새로운 필드 "InviteDate"를 작성하여 날짜 기능을 제거하고 싶습니다.
완벽하게 작동하지만 Devart가 왜 내가 처음 제거한 하위 쿼리에서 Group by를 제거하고 동일한 결과를 얻는 지 궁금합니다. – embarus
그룹화는 JOIN의 수를 줄여야하며 이론적으로는 성능을 약간 향상시켜야합니다. 나는 테이블 사이의 관계를 알지 못했기 때문에 그것을 대략했다. 이 해결책이 당신에게 어울리는 경우에, 당신이 그것을 확인할 수 있다면 기쁠 것입니다. – Devart
감사합니다. @Devart 신의 축복이 있기를 바랍니다. – embarus