Страница: 1 |
Страница: 1 |
Вопрос: Супер запрос SQL - прамблемачкааа
Добавлено: 28.01.09 21:43
Автор вопроса:
Роман
Две таблицы в разных базах данных:
Таблица1: "Base" - с полями - b1,b2,b3
Таблица2: "Base1" - с полями - Key,a1,b1,b2,b3
b1,b2,b3 - абсолютно одинаковые поля
Key - ключевое поле
a1 - дополнительное текстовое поле
Добавляю данные из таблицы Base в таблицу Base1 следующим образом:
"INSERT INTO Base1 IN 'путь к базе Base1' SELECT * FROM Base WHERE b1=1"
Все нормуль - данные из таблиы Base добавляются в Base1.
Но мне нужно чтобы одновременно с заполнением полей b1,b2,b3 заполнялось поле a1 , например словом "ок".
Как соорудить такой запрос? Все перерыл - нифига не найду.
Помогите ПОЖАЛУЙСТА.
Ответы
Всего ответов: 15
Номер ответа: 1
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 28.01.09 22:53
insert into `b` select `a`, 234 as `b` from a where `a` mod 2 = 0
Номер ответа: 2
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #2
Добавлено: 30.01.09 16:23
Имеется ввиду это?:
"INSERT INTO Base1 IN 'путь к базе Base1' SELECT b1,b2,b3,a1 AS 'ок' FROM Base WHERE b1=1;"
Не работает. Пишет "Слишком мало параметров"
Номер ответа: 3
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #3
Добавлено: 30.01.09 16:44
Кроме того полей b1,b2,b3 очень много (около 160). И через запятую их перечислять упаришся. Может есть еще способ?
Номер ответа: 4
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #4
Добавлено: 30.01.09 16:44
Кроме того полей b1,b2,b3 очень много (около 160). И через запятую их перечислять упаришся. Может есть еще способ?
Номер ответа: 5
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #5
Добавлено: 31.01.09 02:53
*
Номер ответа: 6
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #6
Добавлено: 02.02.09 12:42
* - это понятно.
Но вопрос в том, что в таблице "Base1" есть одно лишнее поле, которого нет в таблице "Base", и его нужно заполнить словом "ок" одновременно с заполнением полей из таблицы "Base".
Номер ответа: 7
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #7
Добавлено: 02.02.09 20:19
При указании нужных тебе полей в таблице Base ты можешь выбрать произвольные данные, как будто это колонка таблицы Base. Что и иллюстрирует запрос, написанный в первом посте.
Номер ответа: 8
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #8
Добавлено: 02.02.09 22:54
Если у тебя 160 (!!!) полей то ты наверное что-то делаешь не так
Подумай над изменением схемы БД. Например закинь эти поля в BLOB.
Номер ответа: 9
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #9
Добавлено: 05.02.09 22:43
Не слышал такого.
Обязательно надо будет разобраться.
Номер ответа: 10
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #10
Добавлено: 05.02.09 22:51
Помогите разобраться применительно к моим данным пожалуйста.
Это "INSERT INTO Base1 IN 'путь к базе Base1' SELECT b1,b2,b3,a1 AS 'ок' FROM Base WHERE b1=1;"
или
"INSERT INTO 'Base1' IN 'путь к базе Base1' SELECT 'Base','ok' AS 'Base1' FROM 'Base' WHERE b1=1;"
Ничего не работает.
Номер ответа: 11
Автор ответа: Роман
Вопросов: 26
Ответов: 60
Профиль | | #11
Добавлено: 06.02.09 22:51
Smith, ну чё перебиваешь?
Не мог создать другую тему?
Я тут на свой вопрос ответа не добьюсь, а тут ты со своим лезешь.
Номер ответа: 12
Автор ответа: Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #12
Добавлено: 07.02.09 09:57
Ром если у парней будет время и желание поболтать им будет пофиг сколько тут вопросов и чьи они, и тема топика пофиг и правила форума тоже будут пофиг
По любому твой вопрос первый в очереди и паниковать нет повода.
Номер ответа: 13
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #13
Добавлено: 07.02.09 19:40
SELECT Base0109.LNAME?
Номер ответа: 14
Автор ответа: Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #14
Добавлено: 08.02.09 13:52
Ошибочное или пропущенное слово или аргумент в sеlесt или ошибочная пунктуация
Номер ответа: 15
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #15
Добавлено: 08.02.09 16:19
SELECT [Base0109].[LNAME]