![]() |
![]() |
![]() ![]()
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 ![]() 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 ![]() Ten post edytował PiXel2.0 20.12.2007, 04:27:35 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 8.07.2025 - 07:26 |