Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wybieranie pewnej ilości pól według każdej wartości jednej kolumny
krzmig
post 14.05.2008, 20:36:08
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 3
Dołączył: 24.01.2008
Skąd: Witnica

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


Na wstępie chciał bym zaznaczyć, że szukałem rozwiązania ale niestety nie znalazłem. Nie wiem też czy tytuł jest dobry więc w razie czego proszę o poprawkę ;]

A więc mam tabelę z newsami, a w niej między innymi pole: typ_newsa. I potrzebuję wybrać z tej tabeli po 10 najnowszych newsów z każdej wartości pola typ_newsa. Czy istnieje możliwość wybrania tego wszystkiego w jednym zapytaniu czy nie obejdzie się bez wielu zapytań?


--------------------
Go to the top of the page
+Quote Post
Kethrax
post 15.05.2008, 09:51:29
Post #2





Grupa: Zarejestrowani
Postów: 80
Pomógł: 3
Dołączył: 9.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


Cytat(krzmig @ 14.05.2008, 21:36:08 ) *
A więc mam tabelę z newsami, a w niej między innymi pole: typ_newsa. I potrzebuję wybrać z tej tabeli po 10 najnowszych newsów z każdej wartości pola typ_newsa. Czy istnieje możliwość wybrania tego wszystkiego w jednym zapytaniu czy nie obejdzie się bez wielu zapytań?


Według mnie potrzebujesz tyle zapytań ile jest typów news'ów, a więc:
  1. SELECT * FROM News WHERE typ_newsa = jakiś_typ ORDER BY data_dodania LIMIT 0, 10;


Ten post edytował Kethrax 15.05.2008, 09:54:50


--------------------
Historia wynalazków naukowych i technicznych uczy nas, że rasa ludzka uboga jest w niezależną myśl twórczą i wyobraźnię... człowiek musi niejako dosłownie potknąć się o rzecz samą, aby mu zakwitła Idea. [b]Albert Einstein[/b]
Go to the top of the page
+Quote Post
krzmig
post 15.05.2008, 09:59:21
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 3
Dołączył: 24.01.2008
Skąd: Witnica

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


Dzięki za chęci ale wiem że można to rozwiązać w taki sposób i w taki sposób już to zrobiłem. Jednak z ciekawości chciał bym wiedzieć czy da się to rozwiązać w jednym zapytaniu i ewentualnie czy jest to bardziej optymalne od wielu zapytań.


--------------------
Go to the top of the page
+Quote Post
Kethrax
post 15.05.2008, 10:04:46
Post #4





Grupa: Zarejestrowani
Postów: 80
Pomógł: 3
Dołączył: 9.12.2006
Skąd: Kraków

Ostrzeżenie: (10%)
X----


Jeszcze mozesz sprbowac zrobic widoki dla kazdej kategorii newsow, wtedy forma zapytania ograniczy sie do
  1. SELECT * FROM nazwa_widoku;


--------------------
Historia wynalazków naukowych i technicznych uczy nas, że rasa ludzka uboga jest w niezależną myśl twórczą i wyobraźnię... człowiek musi niejako dosłownie potknąć się o rzecz samą, aby mu zakwitła Idea. [b]Albert Einstein[/b]
Go to the top of the page
+Quote Post
krzmig
post 15.05.2008, 10:31:18
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 3
Dołączył: 24.01.2008
Skąd: Witnica

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


Teoretycznie mógł bym to zrobić na widokach ale typy newsów mają być zarządzane z pliku config.php, wtedy użytkownik jeśli by dodał jakiś typ musiał by też utworzyć do niego widok. Oczywiście można zrobić to przez php ale wydaje mi się że lepszym rozwiązaniem jest pętla która przechodzi tyle razy, ile jest typów w configu, w środku jest zapytanie do bazy wybierające tylko newsy z danego typu. Tak czy inaczej będzie to wykonywane tylko w przypadku jakiś zmian w newsach, w pozostałych przypadkach będę to pobierał z pliku tmp.


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 16.06.2025 - 00:06