SQL Server 2012에서 행 집합과 열 집합의 해시를 생성하는 방법이 있습니까?SQL 서버에서 행 집합에 대한 해시 생성
해시를 생성하여 상위 레코드에 저장하려고합니다. 업데이트가 들어 오면 들어오는 해시를 상위 레코드 해시와 비교하고 데이터가 변경되었는지 여부를 알 수 있습니다.
그래서 이런 일이 좋은 것 :
SELECT GENERATEHASH(CONCATENATE(Name, Description, AnotherColumn))
FROM MyChildTable WHERE ParentId = 2 -- subset of data belong to parent record 2
는 "연결하여"집계 함수가 될 것이다 것뿐만 아니라 열 CONCAT뿐만 아니라, 결과 집합 내부의 행. MAX와 비슷하지만 모든 것을 문자열 연결로 반환합니다.
이 정보가 도움이 되었기를 바랍니다.
내가 해결하려고하는 근본적인 문제는 클라이언트의 시스템이 방대한 양의 계층 적 데이터를 가져 오는 것입니다. 해시를 사용하여 처리하지 않아도된다면 많은 시간을 절약 할 수 있다고 생각합니다. 현재 SP는 중복 데이터를 처리해야 할 때 300 % 느리게 실행됩니다.
많은 감사 한 행 해시를 들어
불행히도 CHECKSUM에는 약점 (예 : 실제 충돌)이 있습니다. 예 : decimal type http://sqlserverpains.blogspot.com.au/2008/06/checksum-pains.html 참고하시기 바랍니다. – Shiv