Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql] Wybieranie danych z tabeli, które znajdują sie w innej tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
Worms
Witam!

Mam w bazie danych 2 tabele, w jednej trzymam filmy, a w drugiej godziny puszczania tych filmów. Tabele maja mniejwiecej taką strukturę:

tabela filmy
Kod
id_filmu|tytul|opis|obsada|itp...


tabela repertuar
Kod
id_repertuaru|id_filmu|id_kina|dzien|godzina


w tabeli repertuar pole dzien trzymany jest jako DATE, a godzina jako TIME. I teraz mam pytanie: Jak wyciagnąć listę filmów, które są grane np dzis? czy da się to jakoś zrobic, bez użycia DISTINCT?

z góry dzieki za odpowiedz :]
ayeo
Możesz użyć JOIN + dodatkowe warunki w sekcji WHERE lub poprostu dodać podzapytanie
phpion
Spróbuj tak:
  1. SELECT DISTINCT f.tytul FROM repertuar r LEFT JOIN film f ON r.id_filmu=f.id_filmu WHERE DAYOFYEAR(r.dzien) = DAYOFYEAR(NOW())


EDIT: zapomniałem nadać alias dla tabeli "film"
Worms
dziala, tylko w tym sęk, że chciałem uzyskac wszystkie informacje o filmiach, a mianowicie id, tytu, obsade itp... czy jest mozliwe wyciagniecie z tabeli A tylko tych rekordów, ktore są w tabeli B?

EDIT:
dziekii, poradziłem sobie. zrobiłem to w następujący sposób:

  1. SELECT DISTINCT f.*
  2. FROM repertuar AS r
  3. LEFT JOIN filmy AS f ON r.id_filmu=f.id_filmu
  4. WHERE r.dzien = CURDATE()


działa wyśmienicie :]
dzieki, za nakierowanie :]
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.