Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie 2 rekordów dla każdego ID
Rysh
post 7.07.2017, 08:20:10
Post #1





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

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


Chciałbym pobrać maksymalnie dwa posty każdego użytkownika:
  1. SELECT * FROM `posts` WHERE `posts`.`user_id` IN (1, 3, 4, 6, 8) AND `active` = 1

W tym przypadku pobiera mi wszystkie posty dla podanych ID użytkowników, a jak zrobić żeby ograniczyć wyniki tylko do dwóch dla każdego użytkownika ?


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Puszy
post 7.07.2017, 08:23:00
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

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


Temat: PHPMySQLGenerowanie daty dla wybranych komentarzy
Go to the top of the page
+Quote Post
Rysh
post 7.07.2017, 08:37:41
Post #3





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

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


Nie wiem czy mi się to przyda, w tym przypadku pobierasz dane z tabeli users a ja operuję na tabeli posts, bo tak mi generuje framework laravel:

  1. $users = User::orderBy('name')->with(['posts' => function($query) {
  2. return $query->where('active', '=', Post::VISIBLE);
  3. }])->paginate(5);


--------------------
Go to the top of the page
+Quote Post
Puszy
post 7.07.2017, 09:30:04
Post #4





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

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


A nie możesz tego napisać czystym SQL? Nie wiem jakie możliwości ma query builder w Laravelu ale bez subquery tego nie zrobisz, szczerze to nawet nie mam pojęcia jak miałbym to zrobić w Doctrinie korzystając z querybuildera. Wykonaj czysty SQL, będzie miał listę ID postów a następnie przekaż listę tych ID jako warunek do zwykłego pobierania w querybuilderze
Go to the top of the page
+Quote Post
Rysh
post 7.07.2017, 10:43:23
Post #5





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

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


Cytat(Puszy @ 7.07.2017, 10:30:04 ) *
A nie możesz tego napisać czystym SQL? Nie wiem jakie możliwości ma query builder w Laravelu ale bez subquery tego nie zrobisz, szczerze to nawet nie mam pojęcia jak miałbym to zrobić w Doctrinie korzystając z querybuildera. Wykonaj czysty SQL, będzie miał listę ID postów a następnie przekaż listę tych ID jako warunek do zwykłego pobierania w querybuilderze

No właśnie myślałem, że może da się to jakoś zrobić, dlatego zapytałem smile.gif
Pokombinuje jeszcze trochę i jak nic nie wyjdzie zrobię w czystym SQL tak jak mówisz. A może przyjdzie jakaś inna mądra głowa i coś doradzi smile.gif


--------------------
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: 14.08.2025 - 02:08