Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> можно ли сделать такой запрос? SQLite 
V
    Опции темы
ne0n
Дата 10.10.2009, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Приветствую! Есть две таблицы(привожу упрощенный вариант чтобы описать суть проблемы):

Table1:
   Имя
   
Table2:
   Имя
   СпецПоле

хочу сделать множественный Insert - INSERT  INTO Table2 SELECT Имя FROM Table1  WHERE ....
Проблема в том, что ведь надо как-то сделать чтобы заполнялось СпецПоле, каким то константным значением. Т.е. для всех значений выбранных при помощи вышеописанного селекта - значение СпецПоле идентично.  Надеюсь суть проблемы ясна, за ранее спасибо) 
PM MAIL ICQ   Вверх
Gudinya
Дата 10.10.2009, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 2.2.2008

Репутация: 2
Всего: 8



Код

INSERT  INTO Table2(имя) SELECT Имя FROM Table1 



Это сообщение отредактировал(а) Gudinya - 10.10.2009, 12:29
PM MAIL ICQ   Вверх
ne0n
Дата 10.10.2009, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Gudinya, в данном случаи все отрабатывает корректно,  и СпецПоле равно значению по умолчанию. Я наверно не совсем хорошо описал проблему. Мне нужно вставить из  Table1  в  Table2  Имя, это как раз реализуется тем запросом который вы описали, но еще надо каким то способом записать одинаковое значение СпецПоле, для всех записей.

Код

Уфф как все запутано получается... попробую проиллюстрировать:

Есть две таблички одинаковой структуры

Table1  
Имя:
Вася
Лена
Дима

_Table1
Маша 
Костя

Первый запрос у нас происходил к Table1
После него Table2 выглядит так

Имя      СпецПоле
Вася            1
Дима           1
Лена           1

Второй запрос уже к _Table1
и после него Table2 выглядит так:

Имя      СпецПоле
Вася            1
Дима           1
Лена           1
Маша          2
Костя          2



эти значения нигде не хранятся...Если будет проще, это номер таблицы из которой были выбраны данные.


Это сообщение отредактировал(а) ne0n - 10.10.2009, 13:17
PM MAIL ICQ   Вверх
Gluttton
Дата 10.10.2009, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 24
Всего: 54



Код

INSERT  INTO Table2(имя, СпецПоле) SELECT Имя, "СпецЗначение" FROM Table1 

Так?

Какой тип у специального значения?
Если число, то ковычки не нужны...

Ну раз число, то
Код

INSERT  INTO Table2(имя, СпецПоле) SELECT Имя, СпецЗначение FROM Table1 

, где СпецЗначение число...

Вопрос в следующем, кто будет генерировать СпецЗначение? Программа? Или пользователь?
Если программа, то можно генерировать запрос при помощи конкатенации строк, где на место значения СпецЗначение программа подставляет перманентное значение...

Это сообщение отредактировал(а) Gluttton - 10.10.2009, 13:26


--------------------
Слава Україні!
PM MAIL   Вверх
ne0n
Дата 10.10.2009, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Gluttton,  Спасибо за оперативную помощь, все вопросы отпали... с меня + smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




[ Время генерации скрипта: 0.0504 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.