SQL 구문 성능 최적화(계속)
지난번 에는 select count(*)와 select*의 실행 효율 문 제 를 사 용 했 습 니 다.제 수 요 는 데 이 터 를 얻 는 총수 로 새로운 id 를 자동 으로 제시 한 다음 에 네티즌 들 은 max 를 사용 할 수 있 는 방식 으로 새로운 id 를 제시 하 는 것 입 니 다.사실 이것 도 좋 은 생각 이 었 습 니 다.
첫 번 째 테스트:
Declare @dddd Datetime Set @dddd=GETDATE()
select MAX(num) from T_BasicInformation
select [ ]=DATEDIFF(ms,@dddd,GetDate())
테스트 결과:비 교 를 통 해 이 방법 을 사용 하 는 집행 효율 이 select count(*)보다 높 지 않 은 것 으로 나 타 났 다.나중에 자 료 를 찾 아 보 니 사실은 max 의 효율 이 상대 적 으로 높 을 것 이라는 것 을 알 게 되 었 습 니 다.그러면 왜 우리 의 테스트 결 과 는 이 럴 까요?우리 이어서 테스트 를 진행 합 시다.
두 번 째 테스트:
① 문장 1
Declare @ddd Datetime Set @ddd=GETDATE()
select MAX(id) from t_SellLogDetail
select [ ]=DATEDIFF(ms,@ddd,GetDate())
테스트 결과:② 문장 2
Declare @dddd Datetime Set @dddd=GETDATE()
select MAX(foodId) from t_SellLogDetail
select [ ]=DATEDIFF(ms,@dddd,GetDate())
테스트 결과:③ 문장 3
Declare @ddddd Datetime Set @ddddd=GETDATE()
select MAX(orderId) from t_SellLogDetail
select [ ]=DATEDIFF(ms,@ddddd,GetDate())
테스트 결과:두 번 째 테스트 를 마치 면 같은 표,다른 필드,max 함수 의 실행 효과 가 다르다 는 것 을 알 수 있 습 니 다.그리고 데이터 형식 에서 출발 했 습 니 다.데이터 형식 은 다음 과 같 습 니 다.
이렇게 되면 우리 의 테스트 결과 에 따라 서로 다른 문제 가 쉽게 해 결 됩 니 다.max 함수 의 실행 과정 에서 데이터 유형 에 따라 서로 다른 집행 효율 이 있 습 니 다.메 인 키 이 고 정형 이 라면 효율 이 가장 높다.메 인 키 가 아 닐 때 int 의 효율 은 문자 형식 보다 높 습 니 다.사실 이것들 은 모두 이해 하기 쉬 워 서 각자 의 사용 방식 이 있다.
소결:
첫 번 째 테스트 가 끝 난 후에 다른 것 을 고려 하지 않 았 는데 나중에 max 에서 주의해 야 할 부분 이 있 음 을 발견 했다.그래서 우리 가 평소에 공부 할 때 반드시 공 부 를 확대 하 는 것 을 배 워 야 한다.자신 이 원 하 는 결과 에 만 국한 되 지 않도록 해 야 한다.결 과 를 얻 는 것 은 물론 시스템 이 필요 한 것 이지 만 학습 기 에 있 는 우리 에 게 는 부족 하 다.우 리 는 끊임없이 탐색 해 야 더욱 큰 발전 을 이 룰 수 있다.
SQL 문장의 성능 최적화 에 대해 소 편 은 여기까지 소개 해 드 리 겠 습 니 다.도움 이 되 셨 으 면 좋 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
깊이 중첩된 객체를 정확히 일치 검색 - PostgreSQL목차 * 🚀 * 🎯 * 🏁 * 🙏 JSON 객체 예시 따라서 우리의 현재 목표는 "고용주"사용자가 입력한 검색어(이 경우에는 '요리')를 얻고 이 용어와 정확히 일치하는 모든 사용자 프로필을 찾는 것입니다. 즐거운 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.