오류내용
빅쿼리에서 fstring을 이용해서 날짜값을 빅쿼리 SQL에 전달할 때 발생하는 오류
코드
def sql(date):
f"""
SELECT keyword, ncc_keyword_id, uploaded_date FROM `project.dataset.table`
WHERE uploaded_date = DATE_ADD(DATE({date}), INTERVAL -5 DAY)
"""
...
해결방법
실제 fstring에서는 문자열이 아닌 그냥 숫자형태로 들어가게 된다. 하지만 실제 빅쿼리에서 날짜는 따옴표 안에 넣어주어야 한다. 2022-08-23 -> "2022-08-23" 따라서 f"\"{date}\""와 같이 역슬래시를 이용해 이스케이프 문자로 따옴표를 함께 넣어서 전달해야한다.
반응형
'데이터 엔지니어링 > Bigquery' 카테고리의 다른 글
빅쿼리에 array 적재하기 (2) | 2022.09.11 |
---|