Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> spis alfabetyczny, A-G,H-K etc.
gdaq
post
Post #1





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 25.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Problem polega na tym iz potrzebuje zrobic spis alfabetyczny wg paru liter np.
A-F wyswietla mi rekordy zaczynajace sie na litery A,B,C,D,E,F etc.
Wiem ze mozna zrobic to przy uzyciu LIKE i ||, ale czy nie zna ktos wydajniejszego sposobu? Myslalem jeszcze o wybraniu rekordow po stronie php uzywajac substr ale nie wiem czy to bedize szybsze.



Gdaq
Go to the top of the page
+Quote Post
plewa
post
Post #2





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 16.01.2005

Ostrzeżenie: (0%)
-----


Wg mnie rozwiązanie LIKE jest chyba najszybszym rozwiązaniem. Autorzy stworzyli funkcje LIKE, by była ona szybka, sprawna i wydajna.
Go to the top of the page
+Quote Post
popbart
post
Post #3





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 22.04.2004
Skąd: Żoliborz

Ostrzeżenie: (0%)
-----


LIKE będzie się mulił jeżeli nie będziesz miał index'u na tym polu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
gdaq
post
Post #4





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 25.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Wymyslilem cos takiego
  1. SELECT *
  2. FROM tabela WHERE FIELD(lower(substring(nazwa,1,1)),'a','b','c') IN (1,2,3)

Tylko ze roznice miedzy moim zapytaniem a likiem widac dopiero przy okolo 10-12 wartosciach (testowalem na tabeli zawierajacej 5500 rekordow) wiec chyba zostanie LIKE


Gdaq
Go to the top of the page
+Quote Post
plewa
post
Post #5





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 16.01.2005

Ostrzeżenie: (0%)
-----


Pewnie. Im prostsze tym szybsze ! (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
gdaq
post
Post #6





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 25.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


tez tak mysle:) dlatego poprzestaen chyba na like ale wiem ze w MSSQL Server 2000 czytalem o czyms wydajniejszym cego uzywanie nawet zaleca microsoft.



Gdaq
Go to the top of the page
+Quote Post
spenalzo
post
Post #7





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


RLIKE - wersja LIKE obslujgujaca wyrazenai regularne.
Go to the top of the page
+Quote Post
sobstel
post
Post #8





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


a moze

  1. WHERE LEFT(col,1)>='A' AND LEFT(col,1)<='F'


?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 06:49