P粉6701076612023-08-25 17:20:32
여기에 와서 위의 답변을 따랐습니다. 그러나 데이터 유형의 순서 불일치로 인해 오류가 발생했습니다. 아래의 다른 답변에 대한 설명이 도움이 될 것입니다.
위 결과가 표의 열 순서와 동일합니까? Oracle은 열 순서에 매우 엄격하기 때문입니다. 다음 예시에서는 오류가 발생합니다.
으아악ORA-01790: 표현식은 해당 표현식과 동일한 데이터 유형을 가져야 합니다
보시다시피 오류의 근본 원인은 *를 열 목록 지정자로 사용하여 암시된 열 순서 불일치에 있습니다. 이러한 유형의 오류는 열 목록을 명시적으로 입력하면 쉽게 피할 수 있습니다.
test1_1790에서 col_a, col_b, col_c를 선택하세요. 모두 노동조합 test2_1790에서 col_a, col_b, col_c를 선택하십시오. 이 오류가 발생하는 더 일반적인 상황은 SELECT 목록에서 두 개 이상의 열을 실수로 바꾸거나 이동하는 경우입니다.
으아악또는 위 방법으로 문제가 해결되지 않으면 다음과 같이 열에 별칭을 생성하는 것이 좋습니다. (쿼리는 귀하의 것과 다르지만 여기서 요점은 열에 별칭을 추가하는 방법입니다.)
으아악