Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL] Wyswietlanie wierszy, ktore nie istnieja w tabeli
kubagogo
post 8.03.2013, 20:06:48
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

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


Hej mam taki problem.
Powiedzmy ze jest tabela z lista miejsc zarezerwowanych na seans w kinie. Znajduja sie w niej tylko rezerwacje w postaci numer miejsca + dane osoby.
Chcialbym teraz wyswietlic liste wolnych miejsc. Ktos ma pomysl jak to zrealizowac?
To cos w stylu wyswietlenia wierszy ktore wogole nie istnija. Nie mozna dodac do tabeli zadnych nowych wierszy np usupelnic od 1-100 tylko numerami siedzen i wyswietlic te, przy ktorych nie ma nazwiska osoby.
Go to the top of the page
+Quote Post
mortus
post 8.03.2013, 20:56:57
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Skoro można jakieś tam miejsca rezerwować, to informacja o miejscach powinna być gdzieś przechowywana, żeby potencjalny użytkownik mógł sobie miejsce wybrać. Zatem załóżmy, że jest to tabela MIEJSCA [ id, rzad, numer ]. Rezerwacje zapisujemy w tabeli REZERWACJE [ id, id_miejsca, dane_osobowe ]. Zapytanie, które wybierze nam wolne miejsca wyglądałoby np. tak:
  1. SELECT `m`.`id`, `m`.`rzad`, `m`.`numer` FROM `MIEJSCA` `m` LEFT JOIN `REZERWACJE` `r` ON `r`.`id_miejsca` = `m`.`id` WHERE `r`.`id` IS NULL

Oczywiście nie jest to jedyne rozwiązanie, a dwie inne propozycje i wyjaśnienie, co jest lepsze znajdziesz tutaj.
Go to the top of the page
+Quote Post
kubagogo
post 8.03.2013, 22:44:42
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

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


Wlasnie problem w tym, ze jest tylko jdna tabela w ktorej mamy 2 kolumny
W pierwszej jest numer siedzenia w drugiej osoba ktora je zarezerwowala
Powiedzmy ze na sali jest 5 miejsc a 2 zostaly zarezerwowane.
W tablicy mamy wtedy 2 wpisy:

NR IMIE
3 Kuba
5 Michal

I teraz w wyniku tego zapytania powinno wyskoczyc nam ze mamy 3 wolne miesca 1,2,4. Powiedzmy w postaci jednej kolumny z 3 wierszami
Tez jest to dla mnie troche dziwnie sformulowne, i zrobil bym to tak jak propnujesz. Ale musi byc wedle wytycznych
Go to the top of the page
+Quote Post
Damonsson
post 8.03.2013, 23:06:22
Post #4





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

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


A skąd skrypt ma wiedzieć, że na sali jest akurat 5 miejsc? To jest niewykonalne, za mało danych wejściowych.

Ten post edytował Damonsson 8.03.2013, 23:07:31
Go to the top of the page
+Quote Post
kubagogo
post 8.03.2013, 23:14:52
Post #5





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

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


Nie mozna w jakis sposob powiedziec w zapytaniu ze interesuja nas tylko ID od 1-5? tylko ze tam nie ma numerow tych miejsc, ktore nie sa zarezerwowane.
Jesli ktos mial by jeszcze jakis pomysl to prosze, jesli faktycznie sie tego nie da zrobic to OK, dzieki za pomoc
Go to the top of the page
+Quote Post
phpion
post 8.03.2013, 23:44:47
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Wygeneruj serię intów, dołącz do nich tabelę z rezerwacjami jako LEFT JOIN i wybierz tylko te inty, które nie mają dopasowania w tabeli rezerwacji (rezerwacja.miejsce IS NULL).
http://stackoverflow.com/questions/304461/...quence-in-mysql
Go to the top of the page
+Quote Post
kubagogo
post 9.03.2013, 18:57:38
Post #7





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 13.10.2010

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


OK wygenerowalem sekwencje, ale w jaki sposob mam ja polaczyc z tabela rezerwacji? To wogole jest mozliwe?
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: 25.06.2025 - 15:43