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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Простой запрос SQL в Access. 
V
    Опции темы
ada239
Дата 28.11.2006, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



В базе есть поле Телефон, все строки которого содержат данные (не NULL), в поле - пятизначные номера (и номера в другом формате).
Поле текстовое. 
Запросы SQL сделаны в Access. 
Это несколько вариантов запроса (были опробованы и другие подобные варианты), Нужно отобрать пятизначные номера ( для простоты в формате типа 12345).

SELECT * FROM МояБаза WHERE Телефон='#####';

SELECT * FROM МояБаза WHERE Телефон='?????';

SELECT * FROM МояБаза WHERE Телефон LIKE '#####'; (тут вроде бы должны как минимум пятизначные отбираться)


Все эти запросы выдают пустую строку таблицы. Где ошибка? 
(если создаю обратные запросы, например, SELECT * FROM МояБаза WHERE Телефон<>'#####'; то выборка получается верной).
PM MAIL   Вверх
Rodman
Дата 29.11.2006, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 1
Всего: 122



Код

SELECT * FROM МояТаблица WHERE Телефон LIKE '#####';

PM MAIL WWW Skype GTalk YIM MSN   Вверх
ada239
Дата 29.11.2006, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



SELECT * FROM МояТаблица WHERE Телефон LIKE '#####';

Этот запрос выдает пустую строку, но такого не должно быть для данной базы. 

Как я поняла, в Access подстановочным единичным символом (числовым) является #? 
А не числовым - что именно - "_"  или "?"
(обратила внимание на то, что для произвольного набора символов "*" работает, а "%" - нет, хотя в Хелпе написано, что должно работать и то, и то.

В чем тогда проблема?
Кстати, если просто фильтры запускать (без SQL запросов), то всё фильтруется верно.
PM MAIL   Вверх
Dremlin
Дата 29.11.2006, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Quo vadis?
*


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

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



Цитата(ada239 @  29.11.2006,  11:03 Найти цитируемый пост)
SELECT * FROM МояТаблица WHERE Телефон LIKE '#####';

должно работать 100%, может в таблице нет 5-значных номеров?  smile 

попробуй еще
Код

SELECT * FROM МояТаблица WHERE LEN(Телефон) = 5;

--------------------
Каждый дурак знает, что до звезд не достать, а умные, не обращая внимания на дураков, пытаются...
PM MAIL   Вверх
ada239
Дата 29.11.2006, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Проблема решена. 
(дело было в настройках сервиса- из-за этого подстановочные знаки не все воспринимались)
PM MAIL   Вверх
Rodman
Дата 29.11.2006, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 1
Всего: 122



ada239, ну тогда пометь топик КАК РЕШЕННЫЙ
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Xperience6699
Дата 6.12.2006, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А можно такой вопрос относительно SQL. Имеется запрос который должен выбрать все объекты с номером который вводится вручную. Проблема заключается в том что при этом выборе в таблицу  должны попасть объекты которые начинаются с введенного мной номера. Т.е например я ввожу номер объекта 1.111 и хочу чтобы в таблицу попали также объекты 1.111.1 , 1.111.2 и т.д.
 Примерно запрос выглядит так
SELECT Equipments.Type_equip, Equipments.N_object, Equipments.Status, Equipments.Serial_N, Equipments.Inv_N, Equipments.Version_PO, Equipments.Hostname, Equipments.Manage_IP, Equipments.DNS_name, Equipments.Notes, Equipments.№
FROM Equipments
WHERE (((Equipments.N_object) Like [Введите номер объекта]));

и данная конструкция не работает
PM MAIL   Вверх
Rodman
Дата 6.12.2006, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 1
Всего: 122



а если 
Код

SELECT Equipments.Type_equip, Equipments.N_object, Equipments.Status, Equipments.Serial_N, Equipments.Inv_N, Equipments.Version_PO, Equipments.Hostname, Equipments.Manage_IP, Equipments.DNS_name, Equipments.Notes, Equipments.№
FROM Equipments WHERE (((Equipments.N_object) in [Введите номер объекта]));


просто у меня тоже в аксесе через Like не получалось
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Xperience6699
Дата 12.12.2006, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Пробовал - заменил Like на In - пишет ошибка. Насколько я знаю конструкция In определяет же совпадение со списком заранее заданных значений(((
PM MAIL   Вверх
bopoha
Дата 19.12.2006, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

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



Xperience6699:
выражение должно быть таким:
like """" & [Введите номер объекта] & "*"""

ada239: 
на будущее: # - число или пробел, 0 - обязятельное число
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




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


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

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