Вставить в Select Sql

Пожалуйста, ответьте мне, если вы знаете, как вставлять значения в столбцы, добавленные в существующую таблицу. Ваш ответ будет очень признателен

insert into table a
(name, id)
select col
from table2
;

select col from table2; 

эти данные sql col - 'john', '1' это непроходимо?

Вы имеете в виду, что col имеет значение 'john','1', как две строки, разделенные запятой?

jarlh 19.06.2018 07:38

table2 col data - это 'john', '1'. Я хочу написать прямо в sql. используйте только "col"

hiyo 19.06.2018 07:40

Вы не должны хранить такие данные ... Данные, разделенные запятыми, - это боль в SQL.

jarlh 19.06.2018 07:41

Являются ли данные col буквально 'John','1', с участием этими одинарными кавычками?

Tim Biegeleisen 19.06.2018 07:41

да имеет одинарные кавычки

hiyo 19.06.2018 07:44
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
5
40
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Вы можете попробовать использовать здесь базовые строковые функции:

INSERT INTO TABLE a (name, id)
SELECT
    SUBSTR(col, 1, INSTR(col, ',') - 1),
    SUBSTR(col, INSTR(col, ',') + 1)
FROM table2;

Если вы не хотите вставлять кавычки, мы можем немного изменить приведенное выше на следующее:

INSERT INTO TABLE a (name, id)
SELECT
    SUBSTR(col, 2, INSTR(col, ',') - 2),
    SUBSTR(col, INSTR(col, ',') + 2, LEN(col) - INSTR(col, ',') - 2)
FROM table2;

Как уже упоминалось в комментариях выше, хранить данные CSV в таблицах, как правило, не рекомендуется. Но ваш вопрос хороший, потому что вы пытаетесь решить эту проблему, перемещая каждое значение в новый столбец.

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