|
|
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Кроме делай как в 7. Что и в Help невразумительно, и Wizart при построении SQL запроса строит его с ошибкой "SQL: GROUP BY clause is invalid (Error 1807) " Если можно самый примитивный пример правильного построения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 07:58 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
help SET ENGINEBEHAVIOR [ 70 | 80 | 90 ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 08:15 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Ну ведь я же сказал "Кроме делай как в 7." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:11 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
чтоб не усложнить, коротко! в select-е должны участвовать те поля, которые присутствуют в <group by ...> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:23 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Select max(F1),f2 from t1 group by f2 Короче, если поля не участвуют в group by(как F1), они должны обрабатываться функциями: Sum(), Min(), Max(), Count() и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:24 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Вот это неправильно: SELECT Solution.key_tel, Solution.key, Solution.parent, Solution.otdel,; Solution.korpus, Solution.text, Solution.image, Solution.type,; Solution.file; FROM solution; GROUP BY Solution.parent Ну и куда впендюривать функцию, которая по большому счету мне не нужна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:40 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Ну ведь я же сказал "Кроме делай как в 7."vic, а что еще Вы ждали? Приведите Ваш запрос, а я Вам скажу, чем он плох ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:47 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Так ведь привел..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:52 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123Вот это неправильно: SELECT Solution.key_tel, Solution.key, Solution.parent, Solution.otdel,; Solution.korpus, Solution.text, Solution.image, Solution.type,; Solution.file; FROM solution; GROUP BY Solution.parent Ну и куда впендюривать функцию, которая по большому счету мне не нужнаА, вот он ;-) Ну, так он совсем плох. Групповые запросы являются непротиворечивыми только в том случае, если все поля, которые попадают в выборку, являются либо полями группировки, либо функциями агрегирования. У Вас же такого нет никак. И единственный способ, чтоб все заработало без переделки запроса - делать как в семерке. Ну а если не как в семерке... Вот так, к примеру, будет нормально (в предположении, что key_tel - PK в этой табличке): Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 09:59 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Неправильный запрос потому, что в общем случае неясно, какое именно значение полей f2 и f3 надо выбрать в пределах одной группы (одного значения) f1. Нет однозначности. Просто в ранних версиях FoxPro такой синтаксис допускался. Вы предполагали , что в пределах одного значения поля f1 занчения полей f2 и f3 одинаковые, поэтому неважно, какое именно значение будет использовано. НО! Это именно Ваше предположение . Нет никакой гарантии, что так и есть на самом деле. Поэтому вполне справедливо, что в старших версиях FoxPro синтаксис был ужесточен. Именно для того, чтобы преодолеть эту неоднозначность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 10:56 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Целью группировки было исключить поворяющиеся значения parent В примерах с одной стороны, когда я группирую по всем полям этого не происходит и я добился желаемого результата во втором случае, но у меня резонно возникает вопрос, а не потерял ли я что-либо минимизируя или преобразуя какое-то поле в таблице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:13 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Извините за то, что Ваш пример провер позднее, в Вашем случае я не получил требуемого (см. выше) по причине повторяющихся значений в полях. И прошу не переводить в плоскость законов о нормировании, иначе утонем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:25 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123 Это Вы кому отвечали? Помоему, я в своем примере показал, какие проблемы могут быть если Ваша цель исключить дубли по одному полю - возникает неоднозначность в том, какие именно значения надо взять в других полях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:36 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123Извините за то, что Ваш пример провер позднее, в Вашем случае я не получил требуемого (см. выше) по причине повторяющихся значений в полях. И прошу не переводить в плоскость законов о нормировании, иначе утонем Вы не поняли самого главного о чем писал ВладимирМ, устранение группировки по всем другим полям приведет к заведомо НЕПРАВИЛЬНОМУ результату, поэтому надо изменить либо сам SELECT выборки значений либо смириться с тем, что возникнут повторяющиеся записи в поле Parent. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:36 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
в первом случае я отвечал Вам ВладимирМ и действительно эта неоднозначность меня и напрягает. To:Paulwist "устранение группировки по всем другим полям приведет к заведомо НЕПРАВИЛЬНОМУ результату" черезчур сильно сказано с остальным согласен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:45 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123 Может быть, если Вы объясните цель , то легче будет предложить средство ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:45 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123 Ну так запустите тест предложенный ВладимирМ и убедитесь в результатах или лень даже это сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 11:59 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Да цель-то ясна и прозрачна: Если раньше я пользовася группировкой как средством удаления повторяющихся значений в интересующем меня поле, то сейчас придется искать другие варианты. В данном случае в таблице сидят имена отделов, которые могут добавлятся или удалятся (ключ parent), идея была выгрести их оттуда и загнать в ComboBox через Курсор, чтобы ComboBox был всегда актуален, но не кишил повторяющимися именами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 12:05 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
vic123Да цель-то ясна и прозрачна: Если раньше я пользовася группировкой как средством удаления повторяющихся значений в интересующем меня поле, ... У средств группировки иное назначение :) А есть еще и SELECT DISTINCT ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 12:36 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
Для исключения дублирующих строк из результирующего запроса, обычно, используют SELECT DISTINCT... С уважением, Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 12:36 |
|
||
|
Так все же как в 9-ке GROUP BY
|
|||
|---|---|---|---|
|
#18+
To:Paulwist Вы невнимательны. Я запустил и все здесь понятно. To: Aleks.... Относительно SELECT DISTINCT Вы оба абсолютно правы есть такое замечательное средство. не всегда приходиться идти проторенным путем В целом ВСЕМ большое mersi стало ясно как работает Group By и чего от него ждать и это главное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2005, 12:43 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33058956&tid=1594268]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
196ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 470ms |

| 0 / 0 |
