2014-12-03 2 views
0

psql 및 Centos에서보기를 만드는 데 문제가 있습니다.PostgreSQL보기 오류

쿼리가 포함 된 파일이 있습니다. 내가

psql -d cjones< order_tester.sql 

을 수행 할 때 그것이 제대로 실행이

enter image description here

것 같습니다.

그런 다음보기를 만들려고하는데 여기에 문제가 있습니다.

enter image description here

나도 같은 텍스트 무언가를 놓치고 있지만 GME 열 ID 문제가 있음을 이야기 해하지 않는 한. 어떤 아이디어?

+2

뷰에는 열 이름에 고유 한 식별자가 있어야합니다. 그러나 쿼리를 실행 중일 때 그러한 문제는 없으며 출력은 편리하게 레이블이 붙습니다 (레이블이 반드시 적절한 열 이름 인 IIRC는 아닙니다). – JayC

+0

어쨌든 이것은 모든 테스트 내용입니다. 두 개의 id 필드가 필요하다면 어떻게 수정합니까? –

+1

'SELECT *'대신에 각 열을 참조하고 두 번째 및 세 번째'ID' 열에 고유 한 별칭을 지정합니다 . – JNevill

답변

1

JayC와 JNevill이 의견에 답을주었습니다. 보기를 작성할 때 이름이 같은 두 개의 열을 가질 수 없습니다.

그들은 당신이 SELECT * 할 수없는, 오히려 내가 당신이 원하는 경우에 대한 SELECT *을 사용할 수 있도록한다는 것입니다 추가 할

SELECT con.id AS contact_id, cust.id AS customer_id, etc. 

뭔가처럼 뭔가를해야 할 것이라고 말했다 보기를 만들면 표를 만들 때 id과 같은 일반적인 용어는 사용하지 말고 contacts 표는 contact_id 표를 가질 수 있고 customers 표는 표를 가질 수 있습니다. 그렇다면 문제가 발생하지 않습니다.

+0

필자는 꼭대기에 코멘트를 추가하고 싶었지만, 아직 그 일을하기에 충분한 평판 포인트가 없다 : P 나는 내 코멘트를 추가하기 위해 내 의견을 추가하는 것 외에도 그들이 말한 내용을 요약했다. . –