MySQL에서 2개의 프로큐더를 1개로 집계하는 방법은 무엇입니까?
P粉998920744
P粉998920744 2024-01-29 10:39:39
0
2
412

거의 동일해 보이는 프로그램이 두 개 있습니다. 한 사람은 위치가격을 받아 작업을 수행하고, 다른 사람은 경험가격을 받습니다. < /p>

첫 번째:

으아아아

두 번째:

으아아아

보시다시피 WHERE 절만 변경되었습니다. MySQL에서는 이 두 프로시저를 하나로 통합할 수 있습니까? 왜냐면 똑같아 보이지만 그냥 바뀔 뿐인 프로그램이 5개 정도 있으니까요 WHERE 절이 있는데, 케이스별로 따로 프로세스를 진행하는 게 귀찮더라구요.

P粉998920744
P粉998920744

모든 응답(2)
P粉315680565

IFNULL을 사용할 수 있습니다. experienceid_location 值并使用 NULL를 다른 값으로 전달하세요.

매개변수가 열 이름과 다르도록 매개변수에 대한 명명 체계(여기서는 in_-접두사)를 갖는 것도 좋은 습관입니다.

으아악
P粉951914381

예를 들어 다음을 사용할 수 있습니다.

으아악

제공된 경우 IN 经验 INT 设置为某个值,则应用它的条件。如果您为此参数提供 NULL,则应用 IN id_location INT 조건.

참고 - 이제 SP에는 4개가 아닌 5개의 매개변수가 있습니다.

추신. SP에는 단일 SQL 문이 포함되어 있으므로 BEGIN-END 및 DELIMITER가 필요하지 않습니다.

PPS. 유사한 접근 방식을 사용하여 조건 중 하나, 둘 다를 적용하거나 둘 다 적용하지 않는 SP를 생성할 수 있습니다. 예를 들면 다음과 같습니다.

으아악

구매력 평가. 2개의 별도 함수를 갖고 싶지만 코드 복사본이 있는 경우(예를 들어 이러한 함수 이름은 이미 여러 코드에서 사용됨) 다음을 수행할 수 있습니다.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿