О присоединении / обновлении / вставке SQL-запроса - PullRequest
0 голосов
/ 04 марта 2010

Я работаю над созданием новой базы данных SQLite. Очевидно, что по ряду причин важна структура и организация.

У меня есть база данных, в которой есть все, что мне нужно, , кроме для одного столбца. Поэтому я продублировал исходную базу данных и хотел бы просто заменить этот один столбец новыми данными из другого столбца в другой таблице в базе данных?

Могу ли я это сделать? Какой запрос позволит мне это сделать?

Запрос на присоединение просто временно присоединяется, верно? Если мне нужно физически внести изменения в структуру БД, я использую обновление?

У меня нет большого опыта работы с SQL-запросами, поэтому любая помощь здесь будет очень полезна!

Ответы [ 2 ]

1 голос
/ 04 марта 2010

Да, вы можете создать запрос и вставить его в новую структуру. Я предполагаю, что есть какая-то связь между двумя таблицами, из которой вам нужно получить данные?

INSERT INTO TableName (field1, field2, field3) 
(SELECT field1, field2, Field3
FROM SomeTable 
INNER JOIN OtherTable on SomeTable.KeyField = OtherTable.FKField)
1 голос
/ 04 марта 2010

Не зная структуру вашей таблицы, это будет путь:

UPDATE new_table
SET new_column = ( SELECT old_column
                   FROM old_table
                   WHERE old_table.id = new_table.id )

Обновляет new_column в вашем new_table со значением old_table.old_column, где совпадает столбец id.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...