Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak optylamie wyciągnąć dane z bazy
Forum PHP.pl > Forum > Bazy danych
enigma
witam smile.gif
mam taką bazę [oczywiście okrojona]
chciałbym wyciągnąć z obu tabel dane, trzeba zrobić złączenie [dodatkowy warunek można uznać za nieważny tongue.gif]
  1. SELECT * FROM ask_link, ask_url
  2. WHERE ask_link.url_id = ask_url.id AND ask_link.tag_id = '1'

z tego otrzymam np. coś takiego
teraz chciałbym aby z tego, tam gdzie w kolumnie url jest
Cytat
wyciągnąć jeden wiersz, więc myślę zrobić tak, żeby do powyższego zapytania dodać jedną linie z GROUP BY
  1. SELECT * FROM ask_link, ask_url
  2. WHERE ask_link.url_id = ask_url.id AND ask_link.tag_id = '1'
  3. GROUP BY ask_url.id

ale czy taj jest dobrze, no bo z DISTINCT się chyba nie da, bo odrzuca całe identyczne wiersze a ja chce odrzucić tylko tam gdzie się url powtarza, może ktoś z Was widzi jakiś inny sposób ?
Proszę o pomoc
najtje
Jeśli tabele masz założone w postgresie z oidami możesz je wykorzystać w następujący sposób:

SELECT * FROM (SELECT min(oid)AS my_oid FROM ask_url group by url) AS O JOIN (SELECT * FROM ask_link, ask_url
WHERE ask_link.url_id = ask_url.id AND ask_link.tag_id = '1') AS Q ON O.my_oid=Q.oid;




niestety GROUP BY nic Ci nie pomoże - zresztą napisze że każda kolumna wchodząca w skład select * musi być ujęta w klauzuli GROUP BY co efektywnie sprowadza się do DISTINCT.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.