Форум: "Базы";
Текущий архив: 2003.12.26;
Скачать: [xml.tar.bz2];
Вниз
помогите SQL запросом Найти похожие ветки
← →
rel_ (2003-12-04 10:24) [0]Мастера, отсоветуйте что-нибудь.
Необходимо отсотрировать, а ещё лучше прогруппировать данные по полю, содержащему данные (месяц и год) в след. виде:
MES
10.2003
12.2003
и.т.д.
пишу следующее:
select cast(SUBSTRING(mes FROM 1 FOR 2) as INTEGER) as nmes,
cast(SUBSTRING(mes FROM 4 FOR 4) as INTEGER) as ngod,
sum(pokaz)
from uslug
group by ngod, nmes
order by ngod, nmes
Если просто сортирую - всё проходит. При группировке - ругается: "invalid field name" ???
← →
Silver Alex (2003-12-04 10:34) [1]попробуй вместо названия поля поставить его значение по порядку
select cast(SUBSTRING(mes FROM 1 FOR 2) as INTEGER) as nmes,
cast(SUBSTRING(mes FROM 4 FOR 4) as INTEGER) as ngod,
sum(pokaz)
from uslug
group by ngod, nmes
order by 1, 2
← →
rel_ (2003-12-04 10:41) [2]C order by всё проходит и с номером по порядку и при обращении по имени. А вот с group by - нет.
← →
Silver Alex (2003-12-04 10:44) [3]нет, наверное так
select cast(SUBSTRING(mes FROM 1 FOR 2) as INTEGER) as nmes,
cast(SUBSTRING(mes FROM 4 FOR 4) as INTEGER) as ngod,
sum(pokaz)
from uslug
group by cast(SUBSTRING(mes FROM 1 FOR 2) , cast(SUBSTRING(mes FROM 4 FOR 4) as INTEGER)
order by 1, 2
← →
Sandman25 (2003-12-04 10:49) [4]Для Paradox такие запросы не проходят. По вычисляемому полю не может быть группировки. Надо делать дополнительное поле типа month_number.
← →
Sandman25 (2003-12-04 10:52) [5]В смысле в LocalSQL такие запросы не проходят.
← →
Sandman25 (2003-12-04 10:53) [6]Выдержка из LocalSQL.hlp:
Note Derived values (calculated values) cannot be used as the basis for a GROUP BY clause.
← →
Johnmen (2003-12-04 10:53) [7]Более того, в соответствии со стандартом SQL92 группировать можно только по реальным полям, указывая их имена.
← →
sniknik (2003-12-04 10:55) [8]Sandman25 © (04.12.03 10:52) [5]
существенная добавка. :о)) jet для dBase/Paradox так может. (возможно/скорее всего и другие тоже могут)
← →
rel_ (2003-12-04 10:55) [9]to Sandman25 ©
всё понятно.
Есть ещё вопросик : есть ли что-то вроде case"а для локального SQL ?
← →
Sandman25 (2003-12-04 11:11) [10][8] sniknik © (04.12.03 10:55)
Возможно. Я ADO никогда не использовал. Может и зря :)
[9] rel_ (04.12.03 10:55)
Нет. Прислушайтесь к [8]. Может, там и case есть :)
← →
sniknik (2003-12-04 11:22) [11]Sandman25 © (04.12.03 11:11) [10]
> Возможно.
точно. я использую, и после ответа перепроверил для гарантии.
← →
Sandman25 (2003-12-04 11:24) [12][11] sniknik © (04.12.03 11:22)
Да я и не спорил.
← →
sniknik (2003-12-04 11:24) [13]не заметил
> Нет. Прислушайтесь к [8]. Может, там и case есть :)
есть iif()
← →
rel_ (2003-12-04 11:24) [14]to sniknik © Это вы о чём с Sandman25 © говорите. не совсем понял ? :))
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.12.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.019 c