Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> grupowanie z like, GROUP BY i LIKE %
kicaj
post
Post #1





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Poszukuje rozwiazania zapytania SQL (MySQL), ktore polega na wyswietleniu rocznikow w ktorych zostaly opublikowane newsy (np. 2010, 2009, 2007, 2006, itd.):

  1. SELECT substring(created, 0, 4), count(*)
  2. FROM news
  3. GROUP BY substring(created, 0, 4)


Niestety, powyzsze nie dziala jak powinno (kombinacje z LIKE tez nie pomoglo).


Dodam ze pole 'created' jest typi DATETIME
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
bpskiba
post
Post #2





Grupa: Zarejestrowani
Postów: 340
Pomógł: 49
Dołączył: 3.07.2009
Skąd: Rzeszów

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


Cytat(kicaj @ 3.05.2012, 10:12:02 ) *
Poszukuje rozwiazania zapytania SQL (MySQL), ktore polega na wyswietleniu rocznikow w ktorych zostaly opublikowane newsy (np. 2010, 2009, 2007, 2006, itd.):

  1. SELECT substring(created, 0, 4), count(*)
  2. FROM news
  3. GROUP BY substring(created, 0, 4)


Niestety, powyzsze nie dziala jak powinno (kombinacje z LIKE tez nie pomoglo).
Dodam ze pole 'created' jest typi DATETIME

  1. SELECT YEAR(created),COUNT(1)
  2. FROM news
  3. GROUP BY YEAR(created)


lub
  1. SELECT LEFT(created,4),COUNT(1)
  2. FROM news
  3. GROUP BY LEFT(created,4)



Twoje zapytanie też zadziała prawidłowo gdy wstawisz SUBSTRING(created, 1,4 )

Ten post edytował bpskiba 3.05.2012, 11:06:52
Go to the top of the page
+Quote Post
kicaj
post
Post #3





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Rzeczywiście, moje zapytanie działa jeśli zamienimy na "...created, 1, 4...".

Ale z wykorzystaniem funkcji YEAR jakoś bardziej mi odpowiada:)
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: 17.09.2025 - 11:29