Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%)
|
Mam takie zapytanko (fragment):
[sql:1:9c6dbbb2b0]SELECT ... IF(LOCATE('jakis',LOWER(post_text))>1, @licz:=@licz+1,0), IF(LOCATE('inny',LOWER(post_text))>1, @licz:=@licz+1,0), @stosunek:=(@licz/LENGTH(post_text)) ...[/sql:1:9c6dbbb2b0] i to nie działa, ponieważ czasami którykolwiek z tych IFów zwróca NULL :? co mnie dziwi troche.. Pokombinowałem troche i wymyśliłem sobie tak: [sql:1:9c6dbbb2b0]SELECT ... IF(LOCATE('jakis',LOWER(post_text))>1, IF(ISNULL(@licz)=1,@licz:=1,@licz:=@licz+1),0), IF(LOCATE('inny',LOWER(post_text))>1, IF(ISNULL(@licz)=1,@licz:=1,@licz:=@licz+1),0), @stosunek:=(IF(ISNULL(@licz),0,@licz)/LENGTH(post_text)) ...[/sql:1:9c6dbbb2b0] Czy to jest poprawne?? Dodatkowe pytania - czy sortowanie po zmiennej jest poprawne? oraz czy jest coś co pozwala sortować naturalnie - bo teraz wiersze sie ukłądają mniej wiecej tak (przy ORDER BY @stosunek): 3.xx 2.xx 10.xx 0.xx itd - a bym chciał żeby było naturalnie posortowane... :/ |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%)
|
Przecież pisałem Ci, że zmienne nie będą tu działać.
Cytat Note: in a SELECT statement, each expression is evaluated only when it's sent to the client. This means that in the HAVING, GROUP BY, or ORDER BY clause, you can't refer to an expression that involves variables that are set in the SELECT part
|
|
|
|
spenalzo Problem z IFem i zmiennymi oraz 2 pytania 12.12.2003, 16:17:58
adwol Re: [MySQL] Problem z IFem i zmiennymi oraz 2 pytania 12.12.2003, 23:42:38
uboottd Mozesz sobie skrocic i uczytelnic zapis konstrukca... 12.12.2003, 23:52:43
spenalzo Re: [MySQL] Problem z IFem i zmiennymi oraz 2 pytania 13.12.2003, 00:36:28
adwol Re: [MySQL] Problem z IFem i zmiennymi oraz 2 pytania 13.12.2003, 17:38:28
spenalzo Re: [MySQL] Problem z IFem i zmiennymi oraz 2 pytania 13.12.2003, 17:44:57
spenalzo CytatPrzecież pisałem Ci, że zmienne nie będą tu d... 13.12.2003, 18:44:47 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 09:23 |