Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Опять Select / 7 сообщений из 7, страница 1 из 1
13.10.2009, 08:53
    #36247004
q1w1e1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
есть таблица
kod kod_grup sum111212323424535
Надо из неё сделать таблицу
kod_grup sum122435
т.е. включить в полученную таблицу, из одинаковой группы(kod_grup), только запись с максимальным кодом(kod)
...
Рейтинг: 0 / 0
13.10.2009, 09:17
    #36247036
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
q1w1e1есть таблица
kod kod_grup sum111212323424535
Надо из неё сделать таблицу
kod_grup sum122435
т.е. включить в полученную таблицу, из одинаковой группы(kod_grup), только запись с максимальным кодом(kod)
Если Kod это PK, то можно так:
Код: plaintext
1.
2.
SELECT kod_grup, Sum ;
FROM T1 WHERE Kod IN ;
(SELECT MAX(Kod) AS Kod FROM T1 GROUP BY Kod_Grup)
С уважением, Алексей.
...
Рейтинг: 0 / 0
13.10.2009, 09:20
    #36247038
LUCIAN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
q1w1e1,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR CKOD (kod	I( 4 ), kod_grup	I( 4 ), sum I( 4 ))
INSERT INTO CKOD VALUES ( 1 ,  1 ,  1 )
INSERT INTO CKOD VALUES ( 2 ,	 1 ,	 2 )
INSERT INTO CKOD VALUES ( 3 ,	 2 ,	 3 )
INSERT INTO CKOD VALUES ( 4 ,	 2 ,	 4 )
INSERT INTO CKOD VALUES ( 5 ,	 3 ,	 5 )
SELECT KOD_GRUP,MAX(SUM) SUM FROM CKOD GROUP BY  1 
...
Рейтинг: 0 / 0
13.10.2009, 09:53
    #36247101
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
LUCIANq1w1e1,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR CKOD (kod	I( 4 ), kod_grup	I( 4 ), sum I( 4 ))
INSERT INTO CKOD VALUES ( 1 ,  1 ,  1 )
INSERT INTO CKOD VALUES ( 2 ,	 1 ,	 2 )
INSERT INTO CKOD VALUES ( 3 ,	 2 ,	 3 )
INSERT INTO CKOD VALUES ( 4 ,	 2 ,	 4 )
INSERT INTO CKOD VALUES ( 5 ,	 3 ,	 5 )
SELECT KOD_GRUP,MAX(SUM) SUM FROM CKOD GROUP BY  1 

Требуется максимальный код, а не sum!
При таких исходных данных вы получите верный результат, а попробуйте в первой строке вместо sum = 2 поставить sum = 10!
С уважением, Алексей
...
Рейтинг: 0 / 0
13.10.2009, 09:58
    #36247112
q1w1e1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
спасибо, хотя в последним варианте вроде бы как бы сомневаюсь, мне вроде надо не максимальную сумму, а сумму максимального основного кода, хотя он не primary, но всё равно уникально -возрастающий...
...
Рейтинг: 0 / 0
13.10.2009, 10:01
    #36247120
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
q1w1e1спасибо, хотя в последним варианте вроде бы как бы сомневаюсь, мне вроде надо не максимальную сумму, а сумму максимального основного кода, хотя он не primary, но всё равно уникально -возрастающий...
Ну если "уникально -возрастающий", то чем не PK ?
С уважением, Алексей.
...
Рейтинг: 0 / 0
13.10.2009, 11:17
    #36247417
q1w1e1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять Select
не знаю...почему -то PK, ассоциируется с инкрементом, а если UDF формирует ключ, то есть доля вероятности(хоть и мизерной) в отсутствии уникальности...., т .е. это вроде как ключ приближающийся к приделу(lim->PK ) PK :-)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Опять Select / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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