Оператор для поиска строк по неполному названию в колонке.
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
Оператор для поиска строк по неполному названию в колонке.
Подскажите, как составить запрос.
Из таблицы нужно выбрать строки; условие для отбора по одной из колонки: известно слово, по которому необходимо отобрать, например, "город". Но в колонке может встречаться не только "город", но и "большой город", "городок" и проч.
Как сформулировать?
Спасибо.
Из таблицы нужно выбрать строки; условие для отбора по одной из колонки: известно слово, по которому необходимо отобрать, например, "город". Но в колонке может встречаться не только "город", но и "большой город", "городок" и проч.
Как сформулировать?
Спасибо.
-
- Гуру
- Сообщения: 4107
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1081
- Ваше звание: программист
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
select * from a where a.key like "%город%"
P.S. Мампинфа по этой части очень убогая, поскольку не допускает использования регулярных выражений.
P.S. Мампинфа по этой части очень убогая, поскольку не допускает использования регулярных выражений.
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
Re: Оператор для поиска строк по неполному названию в колонке.
Спасибо! В мануале так и не нашел.
А если поиск нужно осуществить по двум колонкам? То вот так?:
select * from a where a.key like "%город%" or a.key2 like "%город%"
-
- Участник
- Сообщения: 62
- Зарегистрирован: 07 мар 2010, 10:02
- Репутация: 6
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
Проще - щелкнуть правой кнопкой по названию столбца - фильтр - содержит - ввести любой текст или буквы или цифры. То же самое для другого столбца
-
- Гуру
- Сообщения: 4107
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1081
- Ваше звание: программист
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
типа того ... но скобки с кавычками расставьте, и учтите, что в убогой мапинфе длина строки запроса сильно ограничена, и она ее усекает без предупреждения (а вы гадать будете, что не так). В общем, Мапинфа создавалась для раскрашивания картинок, для работы она не пригодна. Грузите все в PostGIS, и изучайте SQL с расширениями (фенкции с префиксом st_ ). Получаете результат нормальными средствами, и грузите в мапинфу, для раскрашивания. Интерфейс к PostGIS из QGIS, читайте мануалы ...
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
Re: Оператор для поиска строк по неполному названию в колонке.
Спасибо!gamm писал(а): ↑13 фев 2023, 15:56типа того ... но скобки с кавычками расставьте, и учтите, что в убогой мапинфе длина строки запроса сильно ограничена, и она ее усекает без предупреждения (а вы гадать будете, что не так). В общем, Мапинфа создавалась для раскрашивания картинок, для работы она не пригодна. Грузите все в PostGIS, и изучайте SQL с расширениями (фенкции с префиксом st_ ). Получаете результат нормальными средствами, и грузите в мапинфу, для раскрашивания. Интерфейс к PostGIS из QGIS, читайте мануалы ...
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
-
- Участник
- Сообщения: 62
- Зарегистрирован: 07 мар 2010, 10:02
- Репутация: 6
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
Точно не скажу с какой, но уже давно. В 12.5 и далее точно есть
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
Re: Оператор для поиска строк по неполному названию в колонке.
Есть вариант, чтобы не учитывался регистр?gamm писал(а): ↑13 фев 2023, 13:27select * from a where a.key like "%город%"
-
- Участник
- Сообщения: 62
- Зарегистрирован: 07 мар 2010, 10:02
- Репутация: 6
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
Так просто - нет.
Можно неполное слово набрать (без буквы которая может быть в другом регистре) или добавить второе условие и/или
-
- Гуру
- Сообщения: 4107
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1081
- Ваше звание: программист
- Откуда: Казань
Re: Оператор для поиска строк по неполному названию в колонке.
Недавно обсуждали вроде подобное, есть функция перевода всех букв в маленькие, типа lowcase$(), ищите в мануале
lowcase$(a.key) like "%город%"
lowcase$(a.key) like "%город%"
-
- Участник
- Сообщения: 60
- Зарегистрирован: 28 янв 2023, 13:38
- Репутация: 2
- Откуда: Лабытнанги
Re: Оператор для поиска строк по неполному названию в колонке.
Сначала так и начал делать. Да покоя не даёт мысль - мало ли кто какой регистр использовал при вводе (не обязательно осознанно; и не обязательно в начале слова-всякое бывает). Поэтому при каждой такой операции навязчивая мысль покоя не даст - мало ли ошибка.
-
- Гуру
- Сообщения: 4107
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1081
- Ваше звание: программист
- Откуда: Казань
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость