Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / sql-select / 8 сообщений из 8, страница 1 из 1
13.10.2003, 08:43
    #32290898
iwa
iwa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
Здравствуйте!
Есть вопрос.
При использовании sql-select фразы типа group by обязательно должны идти в строгом порядке или нет?
С group by всегда должна использоваться фраза having или нет?

Спасибо.
...
Рейтинг: 0 / 0
13.10.2003, 08:47
    #32290899
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
> При использовании sql-select фразы типа group by обязательно должны идти в строгом порядке или нет?

Нет, но порядок может повлиять на результат.

> С group by всегда должна использоваться фраза having или нет?

Нет.
...
Рейтинг: 0 / 0
13.10.2003, 08:53
    #32290903
iwa
iwa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
каким образом может влиять на результаты порядок в sql-select?
...
Рейтинг: 0 / 0
13.10.2003, 09:16
    #32290918
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
Ну глянь сам:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR x (a i, b i)
INSERT INTO x VALUES ( 1 , 1 )
INSERT INTO x VALUES ( 1 , 1 )
INSERT INTO x VALUES ( 1 , 2 )
INSERT INTO x VALUES ( 1 , 2 )
INSERT INTO x VALUES ( 2 , 1 )
SELECT count(*), a, b  FROM x GROUP BY a,b
SELECT count(*), a, b  FROM x GROUP BY b,a
...
Рейтинг: 0 / 0
13.10.2003, 09:31
    #32290929
iwa
iwa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
Таблица allcalcs
============
структура:
r_year год n4
сальдо n12,2
начислено n12,2
оплачено n12,2
============
Делаю запрос:
select * from allcalcs into cursor temp group by allcalcs.r_year
sele temp
browse

В итоге:
ругается, на group by...
Почему не может сгруппировать по полю год?
...
Рейтинг: 0 / 0
13.10.2003, 09:36
    #32290938
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
Если фокс 8-й, то почитай здесь\r
/topic/52840\r
\r
Может тебе проще нужно?\r
Код: plaintext
select * from allcalcs into cursor temp ORDER BY allcalcs.r_year 
...
Рейтинг: 0 / 0
13.10.2003, 10:17
    #32290981
iwa
iwa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
с order не подойдет, так как мне надо сводные данные.
А фокс-8... Что именно (в двух словах) изменилось в работе с запросом?
...
Рейтинг: 0 / 0
13.10.2003, 11:24
    #32291024
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql-select
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Critical Changes
Critical behavior changes will most likely to affect existing code when running
under Visual FoxPro  8 . 0 . It is extremely important that you read this section.

SQL Data Engine 
Visual FoxPro contains a new SET ENGINEBEHAVIOR command so that you can
control SQL data engine compatibility. This impacts how SQL SELECT
commands function. The current default behavior can be set to previous
behavior using the SET ENGINEBEHAVIOR command and is described as follows: 

You cannot use the DISTINCT clause with Memo or General fields in a SQL
SELECT statement. Instead, wrap a Memo field expression inside a function
such as PADR( ) or ALLTRIM( ). 
The GROUP BY clause does not support Memo or General fields. 
The GROUP BY clause must list every field in the SELECT list, except for fields
contained in an aggregate function, such as the COUNT( ) function. In addition,
the GROUP BY clause must also list every field in a HAVING clause, except for
fields contained in an aggregate function. 

A SQL SELECT statement can contain the HAVING clause without the GROUP
BY clause, as long as the SQL SELECT statement does not contain any
aggregate functions. 
SQL SELECT statements do not automatically remove trailing spaces from the 
values that are compared using the LIKE operation. In versions prior to Visual
FoxPro  8 . 0 , both values in the LIKE operation were trimmed from the right prior
to evaluation so that the LIKE operation could not possibly report all the 
correct matches. 
For more information, see SELECT - SQL Command and SET ENGINEBEHAVIOR Command.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / sql-select / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]