Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2014, 15:34   #1
joolt
 
Регистрация: 20.04.2012
Сообщений: 9
По умолчанию Помогите с запросом на объединение двух полей

Нужен селект (для работы с базой access). В таблице REGISTRY выбрать все поля, где объединенные поля Code и Numb равны некоему полю.
Проблема в объединении этих полей в селекте и сравнении их с другим полем. Туплю( Заранее спасибо!
joolt вне форума Ответить с цитированием
Старый 14.07.2014, 16:07   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Объединенные каким образом? поле+поле?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.07.2014, 16:18   #3
joolt
 
Регистрация: 20.04.2012
Сообщений: 9
По умолчанию

Да, два поля соединить без пробелов (оба числовые). пробовала с concat - access ругается на неизвестную функцию.
joolt вне форума Ответить с цитированием
Старый 14.07.2014, 16:22   #4
joolt
 
Регистрация: 20.04.2012
Сообщений: 9
По умолчанию

то есть если соединить поля, к примеру, 410000 и 001 и получить 410000001
joolt вне форума Ответить с цитированием
Старый 14.07.2014, 16:42   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Да, два поля соединить без пробелов (оба числовые)
Цитата:
к примеру, 410000 и 001
вы нас обманываете. в числовом поле не может быть "001"
там может быть только 1 (без ведущих нулей).
Ну или поле имеет не числовой тип!


кстати, для текстовых полей в MS Access можно использовать операцию "+":
Код:
SELECT  pole1 + " " + pole2
FROM VashaTablica;

Последний раз редактировалось Serge_Bliznykov; 14.07.2014 в 16:45.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.07.2014, 10:43   #6
joolt
 
Регистрация: 20.04.2012
Сообщений: 9
По умолчанию

Спасибо! Запрос получился:
SELECT *
FROM REGISTRY
WHERE (SELECT code+ "." + numb
FROM REGISTRY) = Поле;

Только вот теперь, когда в Поле вношу искомое значение, аксесс выдает: "Данный подчиненный запрос должен возвращать не более одной записи. Исправьте инструкцию SELECT в подчиненном запросе и укажите в ней возвращение одной записи". Теперь туплю, как эту одну запись указать :'(
joolt вне форума Ответить с цитированием
Старый 16.07.2014, 11:19   #7
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

Цитата:
Сообщение от joolt Посмотреть сообщение
Спасибо! Запрос получился:
:'(
зачем еще вложенный селект?

Код:
SELECT *
FROM REGISTRY
WHERE code+ "." + numb = Поле;
не?
ADSoft вне форума Ответить с цитированием
Старый 16.07.2014, 11:20   #8
joolt
 
Регистрация: 20.04.2012
Сообщений: 9
По умолчанию

О, благодарю-благодарю) Почему-то застрял в голове вложенный селект, а все совсем просто оказалось)
joolt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объединение полей АлИван Microsoft Office Access 25 13.01.2014 00:40
Объединение текстовых значений из полей таблицы (Access 2010) Mjaso Microsoft Office Access 7 28.04.2012 21:18
Обновление двух строк одним запросом L_M SQL, базы данных 5 03.02.2011 02:01
Объединение полей. Lena220 Microsoft Office Access 3 06.12.2010 21:45
Объединение 2-х полей таблицы SNUPY SQL, базы данных 2 04.10.2009 22:53