안녕하세요 거기에 어떤 장점/단점은 IF 문을 사용하거나 CASE 문을 대신 사용하도록 선택할 때 저장된 프로 시저를 실행하는 속도 관련이 있습니까? 나는 그것을 피할 수있는 경우가 아닌 트랜잭션 때문에저장 프로 시저의 If 문에 대해 Case 문을 사용할 때의 이점은 무엇입니까?
1
A
답변
2
나는 당신이 IF
의 상태가 여전히 IF
의 BEGIN... END
블록 내부에 유효한 것으로 일반적으로 보장이 없다, 즉, IF
의를 사용하지 않도록하려고합니다.
예를 들어 CASE
문을 SQL SELECT
내에 사용한다고 가정합니다. 그 사용법이 IF
을 피하기위한 것이라면, 꼭 그렇게하십시오.
SQL의 골든 규칙은 다음과 같습니다. 서버가 어떻게해야하는지 파악하게하고 서버에 원하는 것을 알려주십시오..
2
사례와 IF 문과의 속도 차이에 신경 쓰지 마십시오. 데이터베이스를 다루므로 디스크에서 쓰거나 읽는 데 걸리는 시간이 CPU가 IF 또는 대소 문자를 통해 분기하는 데 걸리는 시간이 줄어들 것입니다. 대신에 코드를 읽기 쉽고 유지 보수 할 수 있도록 만드는 것이 중요합니다.
관련 문제
- 1. 저장 프로 시저의 Case 문에서 IF 조건을 확인하는 방법
- 2. 저장 프로 시저의 오류
- 3. 많은 if 문을 사용할 때의 단점
- 4. else if 저장 프로 시저의 문?
- 5. 저장 프로 시저의 오류
- 6. 저장 프로 시저의 SqlBulkCopy
- 7. 저장 프로 시저의 대안
- 8. mysql 저장 프로 시저에서 case-when 문을 사용하는 방법은 무엇입니까?
- 9. 저장 프로 시저의 진행
- 10. 저장 프로 시저의 null 매개 변수를 기반으로하는 문을 무시합니다.
- 11. 저장 프로 시저의 오류
- 12. 저장 프로 시저의 트랜잭션
- 13. 저장 프로 시저의 버전 변경
- 14. 저장 프로 시저의 sql2000 루프
- 15. 저장 프로 시저의 실행 시간
- 16. 저장 프로 시저의 FREETEXT 문제
- 17. 저장 프로 시저의 시간 확인
- 18. postgresql에서 plpgsql을 사용할 때의 이점은 무엇입니까
- 19. SharePoint에서 InfoPath 양식을 사용할 때의 이점은 무엇입니까?
- 20. OGNL에서 Spring EL을 사용할 때의 이점은 무엇입니까?
- 21. Oracle 저장 프로 시저의 오류
- 22. 저장 프로 시저의 비즈니스 로직
- 23. 저장 프로 시저 내에서 Firebird CASE 문
- 24. MSSQL 저장 프로 시저의 변수 구문은 무엇입니까?
- 25. 저장 프로 시저의 임시 테이블
- 26. 저장 프로 시저의 정의 자
- 27. 저장 프로 시저의 예외 관리?
- 28. 저장 프로 시저의 행 수
- 29. 저장 프로 시저의 데이터 정렬
- 30. 저장 프로 시저의 논리 테스트
당신이하려는 일의 구체적인 내용을 모른 채 질문에 대답하는 것은 불가능합니다. T-SQL과 같은 저장 프로 시저 언어에서는 IF와 CASE가 완전히 다른 것들에 사용됩니다. CASE는 명령문 내에서 사용되며 IF는 사용되지 않습니다. –
동의합니다. CASE는 표현식이고 IF는 실행 흐름을 제어합니다. 두 가지 사이에서 결정하려는 코드의 예를 들어야합니다. 나는 당신이 조건부로 변수를 설정하려고 시도하고있는 것으로 추측하고있다. (여기에서는 CASE를 사용하지만 perf에는 그렇지 않다), 또는 당신은 CASE를 오해했다. – GilM