[sqlite] sortowanie
Bambero - 05-12-2005 19:19
[sqlite] sortowanie Witam
Czy jest moze jakis prosty sposób (bez tworzenia podzapytan) na posortowanie wyników w SQLite bez zwracania uwagi na wielkosc liter ?
Domyślnie najpierw sa ciagi pisane duzymi literami, da się to jakos latwo obejsc ?
Pozdrawiam Bambero
Stelmi - 05-12-2005 19:19
Bambero napisał(a): > Witam > > Czy jest moze jakis prosty sposób (bez tworzenia podzapytan) na posortowanie wyników w SQLite bez zwracania uwagi na wielkosc liter ? > > Domyślnie najpierw sa ciagi pisane duzymi literami, da się to jakos latwo obejsc ? >
Może wcześniej zamienić znaki ma małe litery:
http://www.sqlite.org/lang_expr.html
lower(X) Return a copy of string X will all characters converted to lower case. The C library tolower() routine is used for the conversion, which means that this function might not work correctly on UTF-8 characters.
-- Lukasz
Bambero - 09-12-2005 19:52
On Mon, 05 Dec 2005 11:29:47 +0100 Stelmi <stelmi@vp.pl> wrote:
> Bambero napisał(a): > > Witam > > > > Czy jest moze jakis prosty sposób (bez tworzenia podzapytan) na posortowanie wyników w SQLite bez zwracania uwagi na wielkosc liter ? > > > > Domyślnie najpierw sa ciagi pisane duzymi literami, da się to jakoslatwo obejsc ? > > > > Może wcześniej zamienić znaki ma małe litery: > > http://www.sqlite.org/lang_expr.html > > lower(X) Return a copy of string X will all characters converted to > lower case. The C library tolower() routine is used for the conversion, > which means that this function might not work correctly on UTF-8 characters. > >
np.:
SELECT lower(pole1),pole2 ORDER BY pole1;
? No dobrze ale ja nie chce zeby w wynikach byly male litery a cos w rodzaju:
SELECT pole1,pole2 ORDER BY lower(pole1);
zdaje sie nie dzialac.
=?ISO-8859-2?Q?Micha=B3_Zaborowski?= - 09-12-2005 19:53
Warto przeczytać : "User-defined Collating Sequences" na http://www.sqlite.org/version3.html Albo też "7. User-defined Collation Sequences" na http://www.sqlite.org/datatype3.html Na drugiej stronie są przykłady. Jak rozumiem chodzi o wersję 3, bo w 2 było to helpie lepiej opisane... -- Pozdrawiam, Michał Zaborowski (TeXXaS)
Bambero - 09-12-2005 19:53
On Mon, 05 Dec 2005 22:48:33 +0100 Michał Zaborowski <michal.zaborowski@_nospam_wp.pl> wrote:
> chodzi o wersję 3, bo w 2 było to helpie lepiej > opisane...
Niestety o 2
Stelmi - 09-12-2005 19:53
Bambero napisał(a): >> Bambero napisał(a): > > np.: > > SELECT lower(pole1),pole2 ORDER BY pole1; > > ? > No dobrze ale ja nie chce zeby w wynikach byly male litery a cos w rodzaju: > > SELECT pole1,pole2 ORDER BY lower(pole1); > > zdaje sie nie dzialac. >
Sprawdziłem, mi wychodzi że działa:
SQLite version 2.8.16 Enter ".help" for instructions sqlite> create table t (a varchar(10)); sqlite> insert into t (a) values ('aaaaa'); sqlite> insert into t (a) values ('bbbbb'); sqlite> insert into t (a) values ('AAAAA'); sqlite> insert into t (a) values ('BBBBB'); sqlite> insert into t (a) values ('aaaAA'); sqlite> insert into t (a) values ('AAAb'); sqlite> select * from t order by a; AAAAA AAAb BBBBB aaaAA aaaaa bbbbb sqlite> select * from t order by lower(a); aaaAA AAAAA aaaaa AAAb BBBBB bbbbb sqlite>
Pod wersja 3 wynik jest trochę inny, ale też zdaje się poprawny:
sqlite> create table t (a varchar(10)); sqlite> insert into t (a) values ('aaaaa'); sqlite> insert into t (a) values ('bbbbb'); sqlite> insert into t (a) values ('AAAAA'); sqlite> insert into t (a) values ('BBBBB'); sqlite> insert into t (a) values ('aaaAA'); sqlite> insert into t (a) values ('AAAb'); sqlite> select * from t order by a; AAAAA AAAb BBBBB aaaAA aaaaa bbbbb sqlite> select * from t order by lower(a); aaaAA AAAAA aaaaa AAAb BBBBB bbbbb
Pozdrawiam,
-- Lukasz
Bambero - 09-12-2005 19:53
On Tue, 06 Dec 2005 10:18:12 +0100 Stelmi <stelmi@vp.pl> wrote:
> Bambero napisał(a): > >> Bambero napisał(a): > > > > np.: > > > > SELECT lower(pole1),pole2 ORDER BY pole1; > > > > ? > > No dobrze ale ja nie chce zeby w wynikach byly male litery a cos w rodzaju: > > > > SELECT pole1,pole2 ORDER BY lower(pole1); > > > > zdaje sie nie dzialac. > > > > Sprawdziłem, mi wychodzi że działa: > No faktycznie. Hmm nie wiem jak ja to testowałem że byly problemy. Teraz jest ok. Dzieki za pomoc.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
=?ISO-8859-2?Q?=5BORACLE=2C_ORDER_BY=5D_Czy_indeksowane_?==?I SO-8859-2?Q?kolumny_przy=B6piesz=B1_sortowanie=3F?=
sql -> tworzenie nowej kolumny z dzielenia 2 innych i sortowanie po niej
=?iso-8859-2?q?Sortowanie_wyniku_wg_dw=F3ch_kryteri=F3w?=
[ORACLE] sortowanie =?ISO-8859-2?Q?wed=B3ug_ci=B1gu?=
mysql: left join group by order by - problem z sortowaniem
=?iso-8859-2?Q?PostgreSQL_-_jak_ustawi=E6_sortowanie=3F?=
Najlepszy algorytm sortowania ciągu częściowo posortowanego
[MySQL] Dwa typy sortowania w jednej tabeli
jak wymusic sortowanie mysql dla znakow kodowanych w cp1250
[PGSQL] Sortowanie wg indeksu innej tabeli
zanotowane.pldoc.pisz.plpdf.pisz.plczterowers.keep.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|