Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql] INSERT INTO `pole`=MIN(`pole`)
cadavre
post
Post #1





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


Witam!
Mam takie oto zapytanie:
  1. INSERT INTO `eventy` SET `order`= (`order`)-1

Niestety jest ono wykonywane z timeoutem (100% CPU usage Apache'a).

Jakie zapytanie wsadzić by w pole `order` dodaj wartość o jeden mniejszą od `order`?

How to do it? (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)

------------------------------------------------------------------------------------------------------
EDIT:
Mam tyle:
  1. INSERT INTO `eventy` ( `order` )
  2. SELECT MIN( `order` ) -1
  3. FROM `eventy`
Jednak potrzebuję dodać nie tylko `order` i nie tylko z SELECT'a dane. Coś a'la:
  1. INSERT INTO `eventy` ( `order`,`pole_dwa` )
  2. VALUES ( (SELECT MIN( `order` ) -1
  3. FROM `eventy`),'wartość_pola_2' )


Ten post edytował cadavre 11.09.2006, 17:06:13
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cadavre
post
Post #2





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


Jak najbardziej satysfakcjonuje mnie ta odpowiedź. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki wielkie!

Mam jeszcze jedno pytanko dot. SQL: jak zamienić ze sobą dwie kolejne wartości liczbowe (np. 99 i 98)? Jak wiadomo gdy 98 UPDATE'em zrobimy 99 to wtedy będziemy mieć dwie te same wartości 99 i wtedy nie będzie dało się zmienić 99 w 98 bo zmieni obie wartości. Niestety tabela ma tylko wiersz `order` - nie ma żadnych unique'ów z np. ID'ami.

Ten post edytował cadavre 11.09.2006, 18:03:43
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 19:03