2017-09-07 2 views
1

Presto CLI에 매개 변수를 제공하는 옵션이 있습니까?Presto Presto CLI의 매개 변수화 된 SQL

내 impala-shell 명령을 내 HQL 파일이 아래처럼 임팔라의 명령 줄에서 매개 변수를 가져 오는 Presto로 변경하려고합니다. 프레스토에서

impala-shell -f ot_full.hql --var=date_next=${date_next_para} --var=yrmth=${yrmth_para} --var=yrmth_L12=${yrmth_L12_para} --var=pyrmth=${pyrmth_para}

WITH 절은 훨씬 도움이되지 않습니다.

어떻게 Presto 명령 줄로 변환 할 수 있습니까?

당신은 CLI에 전달하기 전에 SQL 쿼리 변수를 대체해야합니다 그래서, 프레스토 .CLI가이 기능을 지원하지 않습니다 https://prestodb.io/docs/current/

+0

아마도 그 유용하지,하지만 sed''와 매개 변수를 주입 : 고양이 ot_full.hql'에 대한 | sed -e "s/date_next/$ {date_next_para} /".. | Presto-cli'? –

답변

0

에서 여기에 대한 문서/예를 찾을 수 없습니다. 한 가지 방법은 쉘에서 직접이 작업을 수행하는 것입니다하십시오 here document를 사용

이상 쿼리의
presto --execute "SELECT * FROM table WHERE ds >= '${date_next_para}'" 

이 좋은 옵션입니다. 에서 [문서] 당으로

+0

분명히 주어진 해결 방법이 효과가 있지만 향후 개발에 이러한 기능을 제공 할 계획이 있습니까? – Shawn

0

[1] :

bin/presto-cli.sh --server host:8080 -f test.sql -d yesterday=$yesterday 

https://github.com/yxydde/Presto-CLI

+1

이 코드 단편은 질문을 해결할 수 있지만 실제로 (https://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) 설명을 포함하면 게시물의 품질을 향상시키는 데 도움이됩니다. 앞으로 독자의 질문에 대답하고 있으며 코드 제안에 대한 이유를 알지 못할 수도 있습니다. –

관련 문제