Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
Ситуация следуящая : Таблица например ID Name Price 1 a 5 2 a 10 3 b 15 4 b 20 Нужно составить запрос типа SELECT Name, MAX(Price) FROM Таблица GROUP BY Name но что бы получить и поле ID , а может и много полей, вобщем всю запись. Вроде все должно как то просто делаться, но что й то не получается Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 13:28 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Vladimir Ваша таблица нормализована только ко 2-й нормальной форме, поэтому практически невозможно сделать так как Вы хотите. Есть в этом случае только одна возможность посчитать суммы, у меня к сожалению нет BOL под рукой, а я не помню ключевое слово, кажется это Count by, только в этом случае у вас будет множественный рекордсет на выходе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:03 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
я путаюсь в формах нормализации и вообще слабо понял что нужно, поэтому такое тупое предложение: SELECT ID, Name, MAX(Price) FROM Таблица GROUP BY ID, Name так не подойдет? или так: SELECT max(ID), Name, MAX(Price) FROM Таблица GROUP BY Name ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:27 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Vladimir Сорри, почему то принял Max за Sum А о нормализации советую задуматься, могут вылезти всяческие грабли 2 SergSuper Хотел сказать, что подойдет Ваш второй запрос, но потом подумалось, что максимальный прайс не обязательно будет под максимальным АйДи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:37 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
select * from Таблица t1 where Price = (select max(Price) from Таблица t2 where t1.Name=t2.Name) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:38 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Pandre А если Ваш подзапрос выдаст десяток max(Price), с каким будете сравнивать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:46 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Vladimir Быстрее будет так select t1.* from Таблица t1, (select Name, max(Price) as Price from Таблица group by Name) t2 where t1.Name=t2.Name and t1.Price = t2.Price 2 Genady Внимательнее смотрите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:52 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Pandre Спасибо , вроде работает , хотя не совсем понимаю как! 2 Genady А как SELECT Max... может выдать больше одной записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2001, 14:53 |
|
||
|
Помогите пожалуйста запрос составить
|
|||
|---|---|---|---|
|
#18+
2 Pandre Vladimir Был глуп, признаюсь но я все же упрямый, поэтому все равно призываю Vladimir нормализовать свою БД. Вот честно говорю, почитайте Дейта об аномалиях обновления, вставки энд удаления, ну просто волосы встают дыбом, КОШМАР !!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2001, 05:31 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32017934&tid=1824821]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
100ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 397ms |

| 0 / 0 |
