Я пробовал этот запрос на сервере MySQL (5.1.41) ...
SELECT max(volume), dateofclose, symbol, volume, close, market FROM daily group by market
Я получил такой результат:
max(volume) dateofclose symbol volume close market
287031500 2010-07-20 AA.P 500 66.41 AMEX
242233000 2010-07-20 AACC 16200 3.98 NASDAQ
1073538000 2010-07-20 A 4361000 27.52 NYSE
2147483647 2010-07-20 AAAE.OB 400 0.01 OTCBB
437462400 2010-07-20 AAB.TO 31400 0.37 TSX
61106320 2010-07-20 AA.V 0 0.24 TSXV
Как видите, максимальный объемОЧЕНЬ отличается от «реального» значения столбца тома?!?
Столбец тома определен как int (11), и я получил 2 миллиона строк в этой таблице, но это очень далеко от максимума хранилища MyISAMтак что я не могу поверить, что это проблема !?Что также странно, так это то, что данные показываются с той же даты (dateofclose).Если я задаю конкретную дату с помощью предложения WHERE, один и тот же символ получился с другим результатом max (volume).Это довольно странно ...
Нужна помощь здесь!
ОБНОВЛЕНИЕ:
Вот мой отредактированный "рабочий" запрос:
SELECT a.* FROM daily a
INNER JOIN (
SELECT market, MAX(volume) AS max_volume
FROM daily
WHERE dateofclose = '20101108'
GROUP BY market
) b ON
a.market = b.market AND
a.volume = b.max_volume
Итакэто дает мне, по рынку, запасы наивысшего объема (на 8 ноября 2010 г.).