Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

sortowanie na podstawie ilosci wystepowania znakow

2 views
Skip to first unread message

Kraskovich

unread,
Nov 20, 2009, 10:00:31 AM11/20/09
to
jak stworzyc zaptanie ktore umozliwi sortowanie na podstawie
wystepowania ilosci znakow w wyniku?

krotko mowiac jesli mamy wynik np

tresc1
tresc1 tresc2
tresc1 tresc2
tresc1 tresc2 tresc3
tresc
tresc1 tresc2

to chcialbym orzymac kolejnosc


tresc1
tresc
tresc1 tresc2
tresc1 tresc2
tresc1 tresc2
tresc1 tresc2 tresc3

pozdrawiam
Jacek

Lemat

unread,
Nov 20, 2009, 1:34:56 PM11/20/09
to
Kraskovich wrote:

http://pl2.php.net/manual/pl/function.usort.php

function cmp($a, $b)
{
if (strlen($a) == strlen($b)) {
return 0;
}
return (strlen($a) < strlen($b)) ? -1 : 1;
}
--
Pozdrawiam
Lemat

Arson

unread,
Nov 22, 2009, 9:21:00 AM11/22/09
to
> function cmp($a, $b)
> {
>     if (strlen($a) == strlen($b)) {
>         return 0;
>     }
>     return (strlen($a) < strlen($b)) ? -1 : 1;}

^^^ Litości...

SELECT * FROM [tabela] order by CHAR_LENGTH([kolumna_z_nazwa])

Pozdrawiam,
Arson

Jacek Czerwinski

unread,
Nov 22, 2009, 10:05:42 AM11/22/09
to
Arson pisze:

>> function cmp($a, $b)
>> {
>> if (strlen($a) == strlen($b)) {
>> return 0;
>> }
>> return (strlen($a) < strlen($b)) ? -1 : 1;}
>
> ^^^ Lito�ci...

>
> SELECT * FROM [tabela] order by CHAR_LENGTH([kolumna_z_nazwa])

Stawiam dolary przeciwko orzechom, �e nie b�dzie zoptymalizowane przez
serwer SQL. Zysk do por�wnania w aplikacji jaki� b�dzie, ale raczej nie
za du�y.

Arson

unread,
Nov 22, 2009, 12:22:08 PM11/22/09
to
> > SELECT * FROM [tabela] order by CHAR_LENGTH([kolumna_z_nazwa])
>
> Stawiam dolary przeciwko orzechom, że nie będzie zoptymalizowane przez
> serwer SQL. Zysk do porównania w aplikacji jakiś będzie, ale raczej nie
> za duży.

Fakt, ale mozna to w prosty sposob zoptymalizowac. Np. dodac kolumne(z
indeksem) np. "buf_name_length"(int) i umieszczac tam dlugosc stringa
podczas INSERT/UPDATE(za pomoca php lub procedury skladowej). Potem
sortowac po tej kolumnie... Poza tym nawet bez optymalizacji jest zysk
w postaci znacznego uproszczenia kodu php.

Pozdrawiam,
Arson

Jacek Czerwinski

unread,
Nov 22, 2009, 3:42:36 PM11/22/09
to
Arson pisze:

>>> SELECT * FROM [tabela] order by CHAR_LENGTH([kolumna_z_nazwa])
>> Stawiam dolary przeciwko orzechom, �e nie b�dzie zoptymalizowane przez

>> serwer SQL. Zysk do por�wnania w aplikacji jaki� b�dzie, ale raczej nie
>> za du�y.
>
> Fakt, ale mozna to w prosty sposob zoptymalizowac. Np. dodac kolumne(z
> indeksem) np. "buf_name_length"(int) i umieszczac tam dlugosc stringa
> podczas INSERT/UPDATE(za pomoca php lub procedury skladowej). Potem
> sortowac po tej kolumnie... Poza tym nawet bez optymalizacji jest zysk
> w postaci znacznego uproszczenia kodu php.

Dla pe�nego obrazu, dodam �e czasem po�wi�ca si� 'uproszczenie kodu np.
php" dla unikni�cie �enienia si� ze specyficznymi (nieprzeno�nymi)
cechami bazy. Pisze si� nieco wi�cej w j�zyku aplikacji aby nie mie�
specyficznych kwerend itd.

Tu wspominam dla formalno�ci, bo rzadko sie tak patrzy na projektach LAMP.

Artur Muszyński

unread,
Nov 24, 2009, 2:39:31 PM11/24/09
to
Jacek Czerwinski pisze:

> Dla pe�nego obrazu, dodam �e czasem po�wi�ca si� 'uproszczenie kodu np.
> php" dla unikni�cie �enienia si� ze specyficznymi (nieprzeno�nymi)
> cechami bazy. Pisze si� nieco wi�cej w j�zyku aplikacji aby nie mie�
> specyficznych kwerend itd.

I da si� w ten spos�b napisa� co� na poziomie? Dla mnie to nierealne.

artur

0 new messages