| 
| 
 | Вопрос # 2 764/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты! Какой SQL-запрос надо написать в Query, чтобы данные из двух таб. в одну переместить
 
|  |   Вопрос задал: MILAN7 (статус: Посетитель)Вопрос отправлен: 11 мая 2009, 23:28
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Dron Здравствуйте, MILAN7!Если речь о связке таблиц по ключу, то запрос примерно следующий:
 
 SELECT table1.*, table2.* FROM table1 INNER JOIN table2 ON (table2.KEY = table1.KEY)Но вы уверены, что вам нужны абсолютно все поля из обеих таблиц? Наверняка нужны только некоторые - тогда их и следует перечислить. 
|  | Ответ отправил: Dron (статус: Студент)Время отправки: 12 мая 2009, 09:25
 
 |  
 Мини-форум вопросаВсего сообщений: 11; последнее сообщение — 14 мая 2009, 17:10; участников в обсуждении: 4. 
|   | Мережников Андрей (статус: Абитуриент), 12 мая 2009, 05:37 [#1]:Если требуется перемещение, а не помещение, то одним запросом не обойтись. А вообще, вопросы надо задавать конкретнее - структура исходных таблиц, какие данные надо перенести, структура таблицы-приемника. Условия связывания данных и т.д. |  
|   | MILAN7 (статус: Посетитель), 12 мая 2009, 16:41 [#2]:Нужно что-бы в табл. зарплата, отображались фамилия, имя, отчество из табл. Кадры |  
|   | Вадим К (статус: Академик), 12 мая 2009, 16:43 [#3]:а может никуда перемещать не нужно? а просто взять данные с двух таблиц и в гриде отобразить? Галочка "подтверждения прочтения" - вселенское зло. |  
|   | MILAN7 (статус: Посетитель), 12 мая 2009, 16:56 [#4]:Ну можно и так, я пробовал этот запрос SELECT table1.*, table2.* FROM table1 INNER JOIN table2 ON (table2.key = table1.key), но выдаёт ошибку, можно ли ещё как нибудь, подскажите пожалуста |  
|   | Вадим К (статус: Академик), 12 мая 2009, 17:10 [#5]:если в первой части select упоминается две таблицы, то и в from должно быть две. как минимум. Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Dron (статус: Студент), 12 мая 2009, 20:11 [#6]:MILAN7: прямо отсюда скопировали и вставили в программу? С уважением. |  
|   | Мережников Андрей (статус: Абитуриент), 13 мая 2009, 18:12 [#7]:to Вадим К - вторая таблица связывается по join поэтому после from ей быть не обязательно. to MILAN7 - какая ошибка выдается?
 Если в таблицах имеются поля с одинаковыми именами, то использование конструкции типа table.* не есть хорошо.
 |  
|   | MILAN7 (статус: Посетитель), 14 мая 2009, 15:31 [#8]:Запрос: SELECT Zarplata.*, Kadri2.family, name, father_name FROM Zarplata INNER JOIN Kadri ON (Kadri.family = Zarplata.family) Ошибка: Table is read only
 |  
|   | Вадим К (статус: Академик), 14 мая 2009, 16:21 [#9]:а если написать по простому SELECT Zarplata.*, Kadri2.family, name, father_name FROM Zarplata, Kadri where (Kadri.family = Zarplata.family)
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Мережников Андрей (статус: Абитуриент), 14 мая 2009, 17:08 [#10]:to MILAN7это полный текст запроса? Тогда очень удивительно, что ругается на то, что таблица только для чтения. Связывать по полю фамилия - очень плохо - что будете делать, если появятся однофамильцы? |  
|   | Вадим К (статус: Академик), 14 мая 2009, 17:10 [#11]:то, что фамилии есть в обоих таблицах - плохой дизайн базы. Надо id заводить. Галочка "подтверждения прочтения" - вселенское зло. |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |