|
|
|
|
$sql = "UPDATE `$table` SET `date` = NOW( ) , `namber` = '$n' WHERE `namber` = '$u' LIMIT 1 ;
UPDATE `$table` SET `date` = NOW( ) , `namber` = '$u' WHERE `namber` = '$n' LIMIT 1 ;";
mysql_query($sql);
|
Где $u = 1 а $n = 2 к примеру
мне просто надо у 2 рядов поменять значения друг у друга... но я незнаю ID нехочется создавать лишний раз массив.. чтоб узнать какой следом идет Id или перед...
но мой пример когда ничего толкого ниделает так как просто напросто меняет значения на тоже самое т.к. перебивает первое :) | |
|
|
|
|
|
|
|
для: sidPR
(07.04.2007 в 00:15)
| | не совсем понятно, наверно mysql_insert_id() вам поможет.
а вообще для mysql есть отдельный форум. | |
|
|
|
|
|
|
|
для: sidPR
(07.04.2007 в 00:15)
| | Если бы клиент mysql мог выполнять несколько запросов за вызов, то сервер бы сперва сменил u на n, а затем назад n на u. В половине случаев - у одной и той же записи.
Можно обойтись одним запросом.
UPDATE table SET date = NOW(), number = $u+$n - number WHERE number IN ($u, $n)
LIMIT 1 здесь (как собственно и везде) вреден. | |
|
|
|
|
|
|
|
для: Trianon
(07.04.2007 в 00:49)
| | Несовсем понимаю что делает этот запрос... но попробывал его спользовать толку никакого :( | |
|
|
|
|
|
|
|
для: sidPR
(07.04.2007 в 00:53)
| | http://softtime.ru/forum/read.php?id_forum=3&id_theme=35585&page=1 - Сдесь более детально суть вопроса...
P.S. заранее спасибо всем! | |
|
|
|
|
|
|
|
для: sidPR
(07.04.2007 в 00:56)
| |
INSERT INTO `dress` (`id`, `cat_id`, `status`, `namber`) VALUES
(10, 1, 'on', 2),
(11, 1, 'on', 1),
(12, 2, 'on', 3),
|
Как сделать обмен между запясями? к примеру namber у которо равен 1 поменть на 2 а у той который был 2 помнеть на 1 ... своего рода обмен.... | |
|
|
|
|
|
|
|
для: sidPR
(07.04.2007 в 17:04)
| | Помогите неужели никто ниделал подобного у себя? | |
|
|
|
|
|
|
|
для: sidPR
(08.04.2007 в 04:32)
| | У меня работает. | |
|
|
|
|
|
|
|
для: Trianon
(08.04.2007 в 15:48)
| |
UPDATE table SET date = NOW(), number = $u+$n - number WHERE number IN ($u, $n)
|
Объясните тогда как он работает такой запрос... =\ | |
|
|
|
|
|
|
|
для: sidPR
(08.04.2007 в 16:19)
| | при подставленных переменных $u и $n, запрос в тех строках, поле number которых равно одной из этих переменных, вычисляет их сумму, и вычитая из суммы предыдущее значение поля, присваивает разность полю. Попутно меняется поле date на текущее время.
mysql_query($sql= "
UPDATE table
SET
date = NOW(),
number = $u+$n - number
WHERE number IN ($u, $n)
") or die("Error in$sql: ".mysql_error());
| Какую из этих строк Вы не поняли? | |
|
|
|
|
|
|
|
для: Trianon
(08.04.2007 в 19:11)
| |
SQL-запрос:
UPDATE dress SET date = NOW( ) ,
number = '1' + '2' - number WHERE `cat_id` = '1' AND number IN (
'1',
'2'
)
Ответ MySQL:
#1054 - Unknown column 'number' in 'where clause'
|
| |
|
|
|
|
|
|
|
для: sidPR
(09.04.2007 в 00:36)
| |
Error inUPDATE dress SET date = NOW(), number = 1+2 - number WHERE `cat_id` = '1' and number IN (1, 2): Unknown column 'number' in 'where clause'
|
| |
|
|
|
|
|
|
|
для: sidPR
(09.04.2007 в 00:43)
| | Unknown column 'number' in 'where clause' переводится как
Неизвестный столбец number в инструкции where.
И я практически уверен, что он не врет. :) | |
|
|
|
|
|
|
|
для: Trianon
(09.04.2007 в 01:10)
| | икренне прошу прощение за невнимательность... просто я в начале поста написал как namber в у вас правильно было :)) вот и понеслось | |
|
|
|