![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL
Сергей © (2002-12-18 17:04:00)делаю простой запрос select * (или несколько полей) from ... group by street. Говорит - not group by expression. Вьіполняется только когда ставить select street from ... group by street. Не должно так бьіть !!! Может че подскажете ?
Сергей (2002-12-19 10:24:00) [1]
> одному человеку в квартире? ;)
ето такой крутой человек - квартиронаниматель, которьій платит комунальньіе услуги :] По идее идентифицировать можно по коду плательщика+вид услуги, но бьіли прокольі с заполнением кода плательщика. Поетому второй вариант - через адрес. Таблицу мне такую дают готовую. Вот и все.
по совету посидел, подумал :] - вобщем тут просто distinct нужно делать. Уж работает. А к group by я с фокса привьік. Так что извините что парил мОзги. Спасибо за советьі :]
Anatoly Podgoretsky (2002-12-18 22:58:00) [2]Сергей (18.12.02 17:37)
Нет смысла в групировке, без агрегатов, но ты можещь не перечислять все поля если заменишь их на *
Val (2002-12-18 18:59:00) [3]Однозначно идентифицировать человека можно по адресу
Просто праздник какой-то, где такой коммунизм, где по одному человеку в квартире? ;)
..так что не ругайте
ругань тут совсем не причем, а вы при такой идентификации, можете получить проблему.
Max Zyuzin (2002-12-18 17:51:00) [4]ой...
Max Zyuzin (2002-12-18 17:51:00) [5]select distinct Улица, Дом, БукваДома, Корпус, Квартира, БукваКвартирьі
from mytable
Johnmen (2002-12-18 17:50:00) [6]На фоксе это интерпретируется и группировка здесь имеет абсолютно другой смысл, нежели в SQL !
Не надо тебе ничего пробовать ! Просто сядь, расслабся и попытайся представить, как должен выглядеть результирующий НД, когда указана груп-ка по одному полю, а селект нескольких (в истинном значении GROUP BY).
Сергей (2002-12-18 17:48:00) [7]
> что хотите увидеть в результате
знач так - в таблице - данньіе по людям. Причем по одному человеку несколько строк. В результате надо список людей.
Однозначно идентифицировать человека можно по адресу -
Улица+Дом+БукваДома+Корпус+Квартира+БукваКвартирьі (колбасу енту не я придумал, так что не ругайте) - ето и есть strit, hnum, hlit, hkor, knum, klit. Вроде все просто...
Val (2002-12-18 17:45:00) [8]>Сергей (18.12.02 17:42)
- работает, однако...могу test.dbf показать :]]
а смысл в чем без агрегатов??
Сергей (2002-12-18 17:42:00) [9]
> Подумай как следут...
думаю...:]
тот же запрос пробую на фоксе с дбф-ки
select fam, name, patr, strit, hnum, hlit, hkor, knum, klit;
from FI111202.DBF;
into table test ;
group by strit
- работает, однако...могу test.dbf показать :]]
Max Zyuzin (2002-12-18 17:41:00) [10]>Сергей (18.12.02 17:35)
Вы лучше объясните, что хотите увидеть в результате...
И для чего вам нужен group by
Сергей (2002-12-18 17:37:00) [11]ведь смьісла нет group по всем полям
Сергей (2002-12-18 17:35:00) [12]
> Reindeer Moss Eater
там групировка нужна по strit, hnum, hlit, hkor, knum, klit
(адрес) - та же ошибка. извиняюсь. просто извращался и на group by strit остановился.
---
select fam, name, patr, strit, hnum, hlit, hkor, knum, klit
from wodb.cp_fi
group by strit, fam, name, patr, hnum, hlit, hkor, knum, klit
---
так пашет. обьясните пжалста, если не влом. не понимаю сей момент. почему именно так ?
Johnmen (2002-12-18 17:32:00) [13]>Сергей (18.12.02 17:04)
>...Не должно так бьіть !!!
Подумай как следут...
qwerty (2002-12-18 17:26:00) [14]select fam, name, patr, strit, hnum, hlit, hkor, knum, klit
from wodb.cp_fi
group by strit, fam, name, patr, hnum, hlit, hkor, knum, klit
Reindeer Moss Eater (2002-12-18 17:25:00) [15]Нет агрегатов, зачем GROUP BY писать?
Для мебели?
Сергей (2002-12-18 17:17:00) [16]
> SUM, AVG, MAX, MIN
нема их там
FreeLancer (2002-12-18 17:10:00) [17]В GROUP BY должны входить все поля кроме тех, к которым применяются SUM, AVG, MAX, MIN и т.п.
Сергей (2002-12-18 17:09:00) [18]select fam, name, patr, strit, hnum, hlit, hkor, knum, klit
from wodb.cp_fi
group by strit
3JIA9I CyKA (2002-12-18 17:06:00) [19]Полный тект запроса где?