Числовое значение не распознано SQL

У меня есть таблица под названием «проверка» и схема под названием «сырая». Оба столбца Boro, Inspection_date являются varchar

Я пытаюсь выполнить преобразование и сохранить в новой схеме под названием «curated» и имени таблицы под названием «insp».

Ниже приведен код, который я написал

CREATE OR REPLACE SCHEMA Curated;

CREATE OR REPLACE TABLE CURATED.Insp (
  "Total Inspections" INTEGER,
  Boro VARCHAR(50),
  Year INTEGER
);


INSERT INTO curated.Insp ("Total Inspections", Boro, Year)
SELECT Boro, COUNT(*) AS "Total Inspections", YEAR(CAST(Inspection_date AS DATE)) AS "Year"
FROM raw.inspection
WHERE YEAR(CAST(Inspection_date AS DATE)) >= 2000 AND Boro NOT LIKE 0
GROUP BY YEAR(CAST(Inspection_date AS DATE)),BORO
ORDER BY YEAR(CAST(Inspection_date AS DATE)) DESC;

Я получаю ошибку ниже

Numeric value 'Bronx' is not recognized

Не уверен, в чем здесь проблема? Столбец Боро имеет 0, но я создал столбец как varchar. Может ли кто-нибудь посоветовать, пожалуйста?

Проверьте порядок столбцов в источнике и назначении: ВСТАВЬТЕ В КАРАТИРОВАННЫЙ. Insp ("Total Inspections", Боро, Год) ВЫБЕРИТЕ Boro, СЧЕТЧИК (*) КАК «Общее количество проверок», ГОД (CAST (дата_проверки КАК ДАТА)) КАК «Год»

ValNik 14.04.2023 13:07

Я удалил тег <ansi-sql>, так как здесь используются несколько функций, отличных от ANSI.

jarlh 14.04.2023 13:28
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
2
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны изменить порядок столбцов в SELECT

INSERT INTO curated.Insp ("Total Inspections", Boro, Year)
SELECT COUNT(*) AS "Total Inspections", Boro,  YEAR(CAST(Inspection_date AS DATE)) AS "Year"
FROM raw.inspection
WHERE YEAR(CAST(Inspection_date AS DATE)) >= 2000 AND Boro NOT LIKE 0
GROUP BY YEAR(CAST(Inspection_date AS DATE)),BORO
ORDER BY YEAR(CAST(Inspection_date AS DATE)) DESC;

Другие вопросы по теме