Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Условие отбора в запросе - поля, содержащие строчные буквы. 2003
 
 автор: awestr   (06.06.2010 в 14:50)   личное сообщение
 
 

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

  Ответить  
 
 автор: Explorer   (06.06.2010 в 18:37)   личное сообщение
 
 

курим LIKE на F1

  Ответить  
 
 автор: awestr   (06.06.2010 в 21:49)   личное сообщение
 
 

Если можешь помочь советом – то, пожалуйста, помоги, буду благодарен. А читать твой бред про то, что ты там куришь, мне и на хрен не надо! Я уже с твоими неадекватными ответами не в первый раз, к сожалению, сталкиваюсь.

  Ответить  
 
 автор: Lukas   (06.06.2010 в 21:52)   личное сообщение
 
 

Ответ абсолютно адекватный.
Если ты не в состоянии дотянуться и надавить на педаль F1, которая открывает справку,
и найти в ней описание Like, то нехер тебе вообще этим делом заниматься.
Иди в грузчики, там много мозга не требуется.
Успехов.

  Ответить  
 
 автор: awestr   (06.06.2010 в 22:52)   личное сообщение
 
 

Ты тоже плохо читашь? Не можешь понять, что надо производить отбор только строчных букв, пропуская поля, имеющие только заглавные буквы? Ты сам то разницу понимаешь между строчными и заглавными буквами? Где ты видел описание подобного в справке Access 2003? Ты сам то свой мозг включи и хоть вопрос, то внимательно прочитай.

  Ответить  
 
 автор: час   (06.06.2010 в 23:14)   личное сообщение
 
 

==========================================================================
Здорово Вы пообщались - двое безмозглых и неадекватных диалоговистов каждый размахивая хером послал собеседника на него...
====================================================================================Lukas щас в расслабухе - так шо просьба его не кантовать!!!!
========================================================================

А что ба различать строчные и прописные одного кода не достаточно будет ИХМО, где то ещё в настройках, то ли системы то ли самого Acessa надо поставить галос\чку - так с лёта и не вспомнишь.
И када такое различие будет в наличии тада уже UCASE нам, то есть Вам поможет.....

  Ответить  
 
 автор: Lukas   (06.06.2010 в 23:24)   личное сообщение
 
 

Ну что ж, придется таки для "грузчиков" скопировать часть справки:


The meaning of a specified range depends on the character ordering valid at run time (as determined by Option Compare and the locale setting of the system the code is running on). Using the Option Compare Binary example, the range [A–E] matches A, B and E. With Option Compare Text, [A–E] matches A, a, А, а, B, b, E, e. The range does not match К or к because accented characters fall after unaccented characters in the sort order.



Пример пользования:
Запрос:
SELECT ItemID, Item FROM tblItems WHERE LikeBin(Item);

Функция:

Option Compare Binary

Public Function LikeBin(Str As String) As Boolean
  LikeBin = Not Str Like "*[А-Я]*" 'ну тут уж сам разберешься чего надо, чего нет
End Function


Впрочем, есть и другой вариант.

  Ответить  
 
 автор: snipe   (07.06.2010 в 03:19)   личное сообщение
 
 

функцию надо писать которая будет возвращать например True или False где разложить слово на буковки и проверить каждую буковку на то маленькая она или нет
в самом запросе обратиться к этой функции с передачей в качестве аргумента слова и в условии отбора выбрать либо true либо false
Вам понадобится функция Asc() - которая возвращает числовой код буковки
маленькие буковки аглицкие лежат в диапазоне от 97 до 122 а русские от 224 до 255
(про другие языки - не знаю)
а еще понадобятся функции Mid() Len() Select Case For-Next

  Ответить  
 
 автор: час   (07.06.2010 в 07:42)   личное сообщение
 
 

О - точно, поглядь, а я вчерась охинею нёс
Тяжёлая баба надо сказать
и чё ты снайпер в 3 часа ночи - не спишь?

  Ответить  
 
 автор: snipe   (07.06.2010 в 07:58)   личное сообщение
 
 

Это у кого 3 часа?
у мну +4 к Мск - то бишь 7 утра
а сейчас почти 12 дня

  Ответить  
 
 автор: час   (07.06.2010 в 08:19)   личное сообщение
 
 

А ты де?

  Ответить  
 
 автор: snipe   (07.06.2010 в 08:45)   личное сообщение
 
 

строго на юг от города Красноярска в 300 км (по прямой) есть городок (160 тыс. населения) - называется Абакан - находится в том месте где сливается река Абакан и река Енисей
Абакан в переводе с местного медвежья кровь (Аба- медведь хан - кровь)

  Ответить  
 
 автор: awestr   (07.06.2010 в 08:33)   личное сообщение
 
 

Спасибо!
Понял в каком направление двигаться …
Жалко, что нельзя указать, на прямую, что-то типа этого “*[224-255]*” по аналогии с “*[а-я]*”.

  Ответить  
 
 автор: snipe   (07.06.2010 в 10:13)   личное сообщение
 
 

Ну - вообще-то можно и без функции
только выражение длинное получится
почитайте про функцию InStr
и в особенности про ее аргумент «compare» со значением 0

  Ответить  
 
 автор: Анатолий (Киев)   (07.06.2010 в 10:58)   личное сообщение
 
 

Чтоб отфильтровать поля только со строчными буквами:
... WHERE StrComp([Поле], LCase([Поле]), 0) = 0

  Ответить  
 
 автор: snipe   (07.06.2010 в 11:25)   личное сообщение
 
 

Вот так всегда - век живи - век учись

а вот так оказывается можно узнать входят в состав слова строчные буквы или нет
StrComp([Поле];UCase([Поле]);0)=1

  Ответить  
 
 автор: awestr   (07.06.2010 в 12:18)   личное сообщение
 
 

Всем большое спасибо за помощь!
Замечательно работает!

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList