Pytanie o zapytanie ;) lub funkcje

0

Cześć mam następujące pytanie. Czy da się zrobić szeregowanie danych pobranych z bazy danych tak aby nie zawsze uwzględniana była pierwsza litera pobieranego rekordu. Dokładniej mówiąc chodzi mi o to że mam bazę danych z nazwami miejscowości. Problem w tym że niektóre miejscowości zaczynają się np. od cudzysłowu (w ramach wyjaśnienia nie ja wypełniałem tą bazę). Teraz jeśli korzystam z zwykłego szeregowania alfabetycznego to miejscowości z cudzysłowem w nazwie są szeregowane w oddzielnej grupie (co jest normalne). Czy da się jakoś w sql (IBM DB2) określic znaki które mają podlegać szeregowaniu, lub pominąć w jakiś sposób ten cudzysłów?

0
  1. A nie można tych cudzysłowów wywalić jednym updatem (z wykorzystaniem jakiegoś stringreplace'a) ?
  2. Zawsze może zbudować sobie kolumnę z użyciem CASE która będzie sprawdzała czy pierwszy znak to ten cudzysłów i ewentualnie go obcinała. A potem po całym tym CASE posortować. W każdym razie optymalne to to nie będzie. Nie wiem czy są jakieś triki pozwalające pomijanie jakichś znaków przy sortowaniu.
0

Rozwiązałem problem np . w ten sposób ORDER BY ltrim(TRANSLATE(NAZWA_PELN,'','„')) ASC.
SQL z kórego korzystam nie ma rozbudowanej funkcji ltrm, więc musiałem to zrobić pośrednio jak powyżej :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1