Как разбить строку на столбцы с условием чтобы запрос был наименьшим?
Объясняю подробнее:
Запрос_1:
SELECT SUBSTRING(repeat('0,',5),1,length(repeat('0,',5))-1) as result
выдает следующее
Запрос_2:
SELECT 0,0,0,0,0
выдает следующее
Теперь вопрос: Какой запрос надо написать чтобы получить резултат как в Запрос_2, но чтобы не писать эти нули вручную, а
сгенерировать их во время выполнения?Для чего мне это надо?А вот, представьте что у вас есть некая таблица
test которая содержит 1000 полей типа
intНадо вставить новую строку содержащую какие-то одинаковые значения, например 1000 нулей (в примерах выше я указал 5 нулей, для простоты). Про дефолтные значения знаю, не предлогать.
Сделать это я могу пока только 2-мя способами:
INSERT INTO test (col1,col2,col3,col4,col5......и так далее...col999,col1000) VALUES (0,0,0,0,0..и так далее...до 1000)
или,
INSERT INTO test 0,0,0,0,0..и так далее...до 1000
Чтобы не указывать эти 1000 нулей, как их сгенерировать?
Первое что мне пришло в голову:
INSERT INTO test SELECT SUBSTRING(repeat('0,',1000),1,length(repeat('0,',1000))-1)
но этот запрос не работает, поскольку вложенный
SELECT выдает одну строку (смотрите скрин от Запрос_1, выше) и один столбец (только там 5 нулей)