Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.01.18;
Скачать: [xml.tar.bz2];

Вниз

Возможно ли сгруппировать записи без ограничивающих пробелов?   Найти похожие ветки 

 
DimonS   (2008-12-03 10:42) [0]

Добрый верер всем.
Есть такой запрос:

select Name
From Gas
group by Name


Работает нормально. Но есть одно НО.
Если в поле Name внесено две одинаковый на первый взгляд записи, которые отличаются лишь тем, что у одной из них в конце стоит пробел (от юзеров всего можно ожидать), то запрос вернет их как две разные.

Есть ли какой-то способ группировки, чтобы пробелы игнорировались? Т.е., например, "Хитачи" и "Хитачи " в выборке были одной строкой "Хитачи".

Да, база Access.


 
Сергей М. ©   (2008-12-03 10:49) [1]

select Trim(Name)
From Gas
group by Trim(Name)


 
clickmaker ©   (2008-12-03 11:06) [2]

> Т.е., например, "Хитачи" и "Хитачи "

справочник сделайте
ID Name
1  Хитачи
2  Панасоник
...

а в основную таблицу пишите ID, а не имя. Тогда и не будет "от юзеров всего можно ожидать"


 
Сергей М. ©   (2008-12-03 11:11) [3]


> справочник сделайте


Гораздо интересней сначала понасоздавать кучу проблем, а потом их героически преодолевать)


 
Sergey13 ©   (2008-12-03 11:17) [4]

> [0] DimonS   (03.12.08 10:42)
> Есть ли какой-то способ группировки, чтобы пробелы игнорировались

А потом ты будешь сравнивать латинские буквы и русские. А потом "Хитачи" и "Классную тачку и с лампочками".


 
Правильный$Вася   (2008-12-03 11:53) [5]


> Если в поле Name внесено две одинаковый на первый взгляд
> записи, которые отличаются лишь тем, что у одной из них
> в конце стоит пробел (от юзеров всего можно ожидать)

перед сохранением обрезать пробелы (в триггере, если таковые есть в акцессе, или на клиенте)
+ поставить ограничение уникальности


 
Правильный$Вася   (2008-12-03 11:54) [6]

> + поставить ограничение уникальности
на справочник [2] естественно


 
DimonS   (2008-12-04 08:39) [7]


> Сергей М. ©   (03.12.08 10:49) [1]
> select Trim(Name)
> From Gas
> group by Trim(Name)


Попробовал сразу же. Почему-то группируются нормально с разными завершающими пробелами, но если есть слово с начинающимся пробелом - то в выборке оно стоит отдельно, хотя пробелов и нет в выборке.


> clickmaker ©   (03.12.08 11:06) [2]


> Правильный$Вася   (03.12.08 11:53) [5]

Когда писалась программа (давно уже) некоторые отчеты даже не предполагались в планах, потому-то и появлялись ошибки. Теперь-то, естественно, при вводе новых данных пробелы обрезаются.


> Сергей М. ©   (03.12.08 11:11) [3]
>
> Гораздо интересней сначала понасоздавать кучу проблем, а
> потом их героически преодолевать)


Как ни странно, но иногда интересно :)


 
DimonS   (2008-12-04 08:45) [8]

Сорри, все нашел.
Спасибо Сергей М., написал вместо
group by Trim(Name)
просто
group by Name,
отсюда и появлялась вторая строка в выборке. А так все работает.


 
Сергей М. ©   (2008-12-04 08:45) [9]


> DimonS   (04.12.08 08:39) [7]


А при

LTrim(RTrim(Name))

ситуация меняется ?


 
Поросенок Винни-Пух ©   (2008-12-04 09:07) [10]

а в основную таблицу пишите ID, а не имя. Тогда и не будет "от юзеров всего можно ожидать"

Словно имя не может быть ключем и не может выбираться из справочника


 
Правильный$Вася   (2008-12-04 11:06) [11]


> Теперь-то, естественно, при вводе новых данных пробелы обрезаются.

а в старых одноразово подрезать не судьба?
чем кроить отчет под левые данные...


 
Anatoly Podgoretsky ©   (2008-12-04 11:07) [12]

> DimonS  (04.12.2008 8:39:07)  [7]

А в консоле один раз ввести команду удаления пробелов в голову не приходило?


 
Anatoly Podgoretsky ©   (2008-12-04 11:08) [13]

> Поросенок Винни-Пух  (04.12.2008 9:07:10)  [10]

> Тогда и не будет "от юзеров всего можно ожидать"

Будет, от юзеров всего можно ожидать


 
DimonS   (2008-12-05 04:16) [14]


> Правильный$Вася   (04.12.08 11:06) [11]


> Anatoly Podgoretsky ©   (04.12.08 11:07) [12]


Сделал уже :)
Вопрос закрыт.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.01.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.005 c
15-1227425906
Solnce
2008-11-23 10:38
2009.01.18
форум загнивает


2-1228158315
Костя
2008-12-01 22:05
2009.01.18
Мониторинг сетевых подключений.


2-1228638477
denissoft
2008-12-07 11:27
2009.01.18
Комонент для отображения дерева?


15-1226915581
L_W
2008-11-17 12:53
2009.01.18
Linux в сети Windows


15-1227340742
palva
2008-11-22 10:59
2009.01.18
Чернобыльская зона отчуждения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский