0
Redshift 클러스터에 연결하고 매개 변수가있는 SQL 스크립트를 실행하려고하는데 오류가 발생합니다. 내가 갖는 오류는psql 명령에 매개 변수를 전달하는 중 오류가 발생했습니다.
select
COALESCE($inputStartDateId, min(StartDateID)),
COALESCE($inputEndDateId, max(EndDateID))
from (
select
row_number()over(order by FiscalWeekID desc) as rownum,
FiscalWeekID,
min(dateid)StartDateID
,max(dateid)EndDateID
from
dm.dim_Time
where DateKey < getdate()
group by FiscalWeekID
) a
where rownum <= 3
: 여기
는 배쉬 명령입니다 :psql -v schema="$REDSHIFT_SCHEMA" -h "$REDSHIFT_HOSTNAME" -d "$REDSHIFT_DATABASE" -U "$REDSHIFT_USERNAME" -p "$REDSHIFT_PORT" -f "nulltest.sql" -v inputStartDateId=20170318 -v inputEndDateId=20170404
그리고 nulltest.sql
의 내용입니다
psql:nulltest.sql:15: ERROR: syntax error at or near "$"
LINE 2: COALESCE($inputStartDateId, max(StartDateID))
나는 매개 변수를 호출 오전 SQL 스크립트에서 잘못? SQL은 런타임에 값을 매개 변수에 전달할 때 Aginity를 통해 완벽하게 실행됩니다. 나는 당신이 명령 줄에서 제대로 매개 변수를 전달하는
상단 최소/최대와 내부 최대의 차이점은 무엇입니까? – maSTAShuFu
날짜를 전달하여 날짜 범위 또는 기타 항목을 만들었습니까? – maSTAShuFu
내부 ID는 StarDateID 및 EndDateID를 정의하고 찾는 데 도움이됩니다. 때로는 수동으로 날짜를 설정해야하기 때문에 매개 변수를 전달합니다. – simplycoding