Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] Usuwanie wyznaczonej liczby rekordow ktorych konkretne pola maja najmniejsza/najwieksza wartosc w tabeli
PiXel2.0
post 20.12.2007, 04:26:31
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 16.03.2007
Skąd: Łódź

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


Mam tabele w ktore sa pola zawierajace wartosc liczbowa i chcialbym skonstruowac JEDNO zapytanie ktore wykona pewna operacje.

Powiedzmy, ze ta tabela zawiera top 100 najdrozszych produktow a pole 'cena' zawiera cene produktu.
Tabela powinna zawierac maksymalnie 100 produktow wiec gdy do tabeli zostanie dodanych 7 nowych o wysokiej cenie to tyle samo starych trzeba usunac (oczywiscie przedstawiona wyzej sytuacja jest fikcyjna i wymyslilem ja aby najprosciej przedstawic moj problem bo jest on nieco bardziej zlozony).

Chodzi o to aby za pomoca DELETE usunac te 7 rekordow w ktorych wartosc pola 'cena' jest najmniejsza.
Czy jest to mozliwe do osiagniecia za pomoca tylko jednego zapytania questionmark.gif

Normalnie najpierw pobralbym okreslona liczbe rekordow w ktorych wartosc pola 'cena' jest najnizsza przy pomocy ORDER BY oraz LIMIT w celu pozyskania kluczy tych rekordow a pozniej za pomoca kolejnego zapytania usunal te rekordy na podstawie wczesniej pobranych kluczy, ale to dwa lub wiecej zapytan a ja chcialbym to zrobic za pomoca tylko jednego zapytania.

Czy jest to mozliwe a jesli tak to w jaki sposob questionmark.gif

Ten post edytował PiXel2.0 20.12.2007, 04:27:35
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.07.2025 - 07:26