Я провожу микрокурс по Kaggle, на котором два, казалось бы, одинаковых блока (за исключением отступа) дают разные результаты.
1.
answers_query = """
SELECT a.id, a.body, a.owner_user_id
FROM `bigquery-public-data.stackoverflow.posts_questions` AS q
INNER JOIN `bigquery-public-data.stackoverflow.posts_answers` AS a
ON q.id = a.parent_id
WHERE q.tags LIKE '%bigquery%'
"""
# Set up the query
safe_config = bigquery.QueryJobConfig(maximum_bytes_billed=10**10)
answers_query_job = client.query(answers_query, job_config = safe_config) # Your code goes here
# API request - run the query, and return a pandas DataFrame
answers_results = answers_query_job.to_dataframe() # Your code goes here
# Preview results
print(answers_results.head())
# Check your answer
q_4.check()
Запуск этот код, я получаю следующую ошибку:
400 GET https://dp.kaggle.net/bigquery/v2/projects/kaggle-161607/queries/fdc91d96-2162-4e88-895e-7b0e2ffc377e?maxResults=0&location=US: Превышен предел запроса для выставленных байтов: 10000000000. Требуется 25131220992 или выше.
Однако когда я просто заменяю свой answers_query
следующим образом, ошибки не возникает:
answers_query = """
SELECT a.id, a.body, a.owner_user_id
FROM `bigquery-public-data.stackoverflow.posts_questions` AS q
INNER JOIN `bigquery-public-data.stackoverflow.posts_answers` AS a
ON q.id = a.parent_id
WHERE q.tags LIKE '%bigquery%'
"""
Кажется, что разные отступы дают разные результаты. Я новичок в SQL, поэтому не знаю, имеет ли значение отступ. Судя по поиску в Google и другим ответам на переполнение стека, кажется, что отступы - это вопрос удобочитаемости, и он не должен ничего менять.