테스트 사이트 - 개발 중인 베타 버전입니다

postgresql 질문입니다. 채택완료

선구자 5년 전 조회 1,950

오라클용을 postgresql로 변환하고 있습니다.

 

 

특정 컬럼이 숫자 아니면 ''값이 들어있는데- NULL아님.

 

''를 숫자 0으로 바꾸고 싶습니다.

 

cast(coalesce(replace(NULL, NULL, NULL), '1') as float) -> 에러 없음
cast(coalesce(replace('', '', NULL), '1') as float) -> 에러 없음
cast(coalesce(replace(123123, '', NULL), '1') as float) -> 에러

 

특정컬럼이 공백이 들어가있을경우 에러가 없는데

숫자가 들어가있는 경우 에러입니다.

[42883] ERROR: function replace(integer, unknown, unknown) does not exist Hint: No function matches the given name and argument types. You might need to add explicit type casts. Position: 142

 

숫자가 들어있지 않을때 0이 들어가게 하려고 한것인데

이제는 숫자가 들어가면 에러가 나네요..

 

뭐 좋은 방법 있을까요?

 

필드에는 숫자 아니면 ''이 들어갑니다.

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

해결했습니다.

숫자형을 STRING으로 한번 더 케스팅했어요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

해결했습니다.

숫자형을 STRING으로 한번 더 케스팅했어요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인