• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Połączenie dwóch zapytań

Object Storage Arubacloud
0 głosów
197 wizyt
pytanie zadane 28 lipca 2018 w SQL, bazy danych przez Orustak Nowicjusz (140 p.)

Cześć, proszę o pomoc, nakierowanie na odpowiednie zagadnienie.

Potrzebuję napisać selecta, który zwróci mi cztery najnowsze tematy z konkretnych dwóch działów oraz informacje o pierwszym poście i jego autorze. Jest to operacja na 3 tabelach, które powiązane są oczywiście kluczami obcymi.

Nie mam problemu z napisaniem dwóch osobnych zapytań, które:

1. Wyświetli 4 ostatnie tematy z wskazanych działów (topic ma referencje do section)

(na screenie nie ma dodanego limit 4)

2. Wyświetli pierwszy post (czyli autora tematu) oraz, na podstawie referencji do tabeli user, informacje o autorze.

Mam za to problem z połączeniem tych dwóch zapytań - dlatego proszę o pomoc, wskazówki, cokolwiek. Jak połączyć te zapytania, żeby w tym drugim odwoływać się do ID każdego kolejnego wypisywanego tematu? Serdecznie dziękuje z góry za odpowiedzi.

1 odpowiedź

0 głosów
odpowiedź 28 lipca 2018 przez Wiciorny Ekspert (270,230 p.)
Skorzystać z podzapytań?

https://www.sqlpedia.pl/podzapytania-sql/

fajnie wyjaśnione
komentarz 28 lipca 2018 przez Orustak Nowicjusz (140 p.)

Zdaje sobie sprawę z istnienia podzapytań, ale kompletnie nie umiem sobie poradzić z ich zastosowaniem w moim przypadku - stąd też ten temat. Najbliżej jestem stosując coś takiego:

select t.id as topic_id, t.name as topic_name, p.post_id, p.post_author, p.post_date
from topic t
join (
	select p.id as post_id, p.ref_topic as ref_topic, u.login as post_author, p.create_date as post_date
    from post p, user u
    where p.ref_user=u.id
    order by p.create_date
) p on p.ref_topic=t.id
where t.ref_section=1 or t.ref_section=6
order by t.id desc

z tym, że dostaje kilka razy ten sam temat. Dodając do wewnętrznego zapytania limit 1 nie wyświetla się nic.

Podobne pytania

0 głosów
1 odpowiedź 548 wizyt
0 głosów
1 odpowiedź 1,289 wizyt
pytanie zadane 14 stycznia 2018 w Sieci komputerowe, internet przez przemyslawski Nowicjusz (120 p.)
0 głosów
1 odpowiedź 2,160 wizyt
pytanie zadane 23 marca 2020 w SQL, bazy danych przez Remi15 Nowicjusz (130 p.)

92,584 zapytań

141,434 odpowiedzi

319,671 komentarzy

61,968 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...