проблема )
Posted by:
Maxim K
Date: January 27, 2010 08:23AM
не рискну своим английски пугать коллег англоязычных, пока напишу сюда)
в общем есть сложная база и сложный запрос, который успешно работает, за исключением сортировки. В общем если все упростить, то есть возможность изложить всю картину следующим образом:
Есть таблица с двумя полями id, dbl
1 466.2000
2 255.5000
3 1568.7000
4 5229.0000
5 2934.1200
и запросы:
SELECT id, @DBL:=DBL, (@DBL) as cost FROM test HAVING cost<=1000 ORDER by cost ASC - РАБОТАЕТ
если заменить на в ORDER by на id или убрать то не работает.
и без ORDER by id тоже не работает
Спасибо.
изврат вроде @DBL:=DBL, (@DBL) as cost НЕОБХОДИМ для формул. в исходном виде скрипт подставляет формулы и мускул считает конечную стоимость. изначально в базе 50 полей DBL1...DBL50 (к примеру)
таблица
CREATE TABLE `test` (
`id` int(10) NOT NULL auto_increment,
`DBL` decimal(19,4) NOT NULL,
PRIMARY KEY (`id`),
KEY `DBL` (`DBL`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=87390 ;
--
-- Дамп данных таблицы `test`
--
INSERT INTO `test` (`id`, `DBL`) VALUES
(1, 466.2000),
(2, 255.5000),
(3, 1568.7000),
(4, 5229.0000),
(5, 2934.1200),
(6, 2207.8000);