Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как в запросе вывести только 3 записи? / 25 сообщений из 30, страница 1 из 2
10.04.2003, 14:28
    #32137571
чайник№2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Что нужно поставить для этого в условие отобора?
(Только начал учить Аксес...). Помогите плиз.....
...
Рейтинг: 0 / 0
10.04.2003, 14:33
    #32137577
наутилус
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
select top 3
...
Рейтинг: 0 / 0
10.04.2003, 14:41
    #32137589
Чайник№2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Это ж не SQL.
Я когда составляю запрос с помощью конструктора. нужно вывести из таблицы 3 максимальных поля. Я упорядочиваю по убыванию, и мне надо теперь выбрать первых 3 записи.
...
Рейтинг: 0 / 0
10.04.2003, 14:43
    #32137591
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
select top 3 - это:

1. SQL.

2. То, что нужно.
...
Рейтинг: 0 / 0
10.04.2003, 14:50
    #32137601
Чайник №2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Да знаю, что select top это SQL, у меня ж аксес.
У меня орет, и приравнивает поле под которым в условии отбора я пишу select top 3 к этому выражению. Типа: Товар.Цена= "Select top 3" и орет :(((
...
Рейтинг: 0 / 0
10.04.2003, 15:04
    #32137622
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Прошу прощения, я не знаком с русской терминологией Аксесса. Что такое условие отбора и как оно выглядит у Вас?
...
Рейтинг: 0 / 0
10.04.2003, 15:13
    #32137638
Чайник №2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Это 1 курс. Когда входишь запросы - конструктор. Там выбираешь таблицу, внизу - поле, которое отображается, и условие отбора.
...
Рейтинг: 0 / 0
10.04.2003, 15:19
    #32137648
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Э, так ведь количество записей - это ведь не на уровне поля! Оно ж не может быть разным для разных полей! Зайдите в свойства запроса, там задается что-то типа количества верхних записей. Задайте его. А если потом захотите посмотреть, какой SQL получился, то увидите как раз select top.
...
Рейтинг: 0 / 0
10.04.2003, 15:23
    #32137654
Чайник №2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Спасибо, не нашел количества верхних записей, но в "режиме SQL" подписал TOP 3 хоть так.... может не спросят почему....
А не могли бы вы еще мой вопрос посмотреть, выше....
СПАСИБО!!!!
...
Рейтинг: 0 / 0
10.04.2003, 15:24
    #32137657
наутилус
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
=))))))) ггг "а у меня аксес" =)))
в конструкторе запроса.. перейди в режим sql и допиши ручками =)
...
Рейтинг: 0 / 0
10.04.2003, 16:01
    #32137722
наутилус
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
ответ. на первый вопрос.
в условие отбора нельзя поставить ТАКОЕ условие для этого используется именно ТОР.
***.... может не спросят почему....
а если спросят.. так и отвечайте.. для того что бы выводилось только 3(три) первых записи
...
Рейтинг: 0 / 0
10.04.2003, 16:39
    #32137771
Bor-L
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Для общего развития (для ответа на 5+). Из HELP-a

TOP n Возвращает определенное число записей, находящихся в начале или в конце диапазона, описанного с помощью предложения ORDER BY. Следующая инструкция SQL позволяет получить список 25 лучших студентов выпуска 1996 года:SELECT TOP 25
Имя, Фамилия
FROM Студенты
WHERE ГодВыпуска = 1996
ORDER BY СреднийБалл DESC;Если предложение ORDER BY будет опущено, запрос возвратит произвольный набор 25 записей из таблицы "Студенты", удовлетворяющих предложению WHERE.
САМОЕ ГЛАВНОЕ :
Предикат TOP не осуществляет выбор между равными значениями. Если в предыдущем примере средние балы двадцать пятого и двадцать шестого студента будут равны, то запрос возвратит 26 записей.

т.е. Ваш TOP вернет НЕ МЕНЕЕ 3-х записей.
...
Рейтинг: 0 / 0
08.09.2003, 14:45
    #32258561
Fast
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Ну чтоже спасибо за обьяснения работы TOP, ну давайте всеже подумаем как выбрать именно N первых записей, а в данном случае получаем что мы вибраем не мение N записей.
Понимаеть в чем разница: с использованием top я буду уверен что запрос мне вернет не мение какого либо количества записей однако максимальное число записей не ограниченно.
...
Рейтинг: 0 / 0
09.09.2003, 09:39
    #32259368
funddd
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Дык можно же сортировать по тому полю, в котором не будет повторений (например, по ключу).
а по поводу не менее - если в таблице 2 записи, то top 3 и вернет 2 записи - третью он придумывать не станет... :)
...
Рейтинг: 0 / 0
11.09.2003, 12:18
    #32262212
vlad_707
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
В продолжении этой темы.....
А как вывести запрос трёх лучших студентов в порядке убывания по каждому году выпуска.
Т.Е. хочу чтоб
первый столбец- год
второй столбец-фамилия
третий столбец-балл

Где второй и третий столбец- 3 лучших...........
Очень интересно получить ответ..........
...
Рейтинг: 0 / 0
11.09.2003, 14:13
    #32262448
vlad_707
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Неужели это уже не выполнимо ????????
...
Рейтинг: 0 / 0
11.09.2003, 14:16
    #32262461
Svetlana_613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Думаю, что на первый курс потянет:
Создаешь запрос обычным конструктором, сортируешь по полю год.
в свойствах запроса, (там где таблички по правой кнопке например) есть "Набор значений" - ставишь 3 или то, что нужно.
получаем три записи или меньше, если записей в запросе меньше, но не больше.
...
Рейтинг: 0 / 0
11.09.2003, 14:34
    #32262491
vlad_707
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
поясните пожалуста понятливее- где находится "Набор значений" - ставишь 3 или то, что нужно.
я не нашёл.....
...
Рейтинг: 0 / 0
11.09.2003, 14:36
    #32262498
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
а если у 5 студентов за год одинаково хорошие оценки. кого из них должен отбросить запрос?
...
Рейтинг: 0 / 0
11.09.2003, 14:58
    #32262535
Svetlana_613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
Для Vlad_707

Access 2000 за остальные не ручаюсь
в конструкторе запроса: меню "Вид"->"Свойства запроса"
вкладка "Общие" 3-я строка сверху "Набор значений"

Для АлексейК
Смотря как отсортирован запрос, кроме года
...
Рейтинг: 0 / 0
11.09.2003, 15:01
    #32262541
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
2 Svetlana_613:

Это даст 3 записи всего , а не то, что требовалось. :^)
...
Рейтинг: 0 / 0
11.09.2003, 15:37
    #32262604
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
2 Svetlana_613
если у 5 учеников одинаковый бал -
Ответ неправильный

такой запрос

Код: plaintext
1.
2.
3.
SELECT TOP  3  t1.familia, Max(t1.bal) AS [Max-bal]
FROM t1
GROUP BY t1.fam
ORDER BY Max(t1.bal) DESC;


вернет 5 записей

такой
Код: plaintext
1.
2.
SELECT TOP  3  t1.familia, Max(t1.bal) AS [Max-bal]
FROM t1
GROUP BY t1.fam


вернет 3 записи.
...
Рейтинг: 0 / 0
11.09.2003, 15:45
    #32262617
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
а такой 3 записи )))

Код: plaintext
1.
2.
3.
SELECT TOP  3  Max(t1.bal) AS [Max-bal], t1.familia
FROM t1
GROUP BY t1.fam
ORDER BY Max(t1.bal) DESC , t1.familia;


поле familia включено в сортировку )))
...
Рейтинг: 0 / 0
11.09.2003, 15:47
    #32262619
Svetlana_613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
по поводу Темы- "Как в запросе вывести только 3 записи?" и вопроса первого курса, мне кажется как раз в самую тему
А по поводу 3 записи по каждому году, то нужно, конечно ручками :(((
...
Рейтинг: 0 / 0
11.09.2003, 16:09
    #32262676
vlad_707
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в запросе вывести только 3 записи?
хм... Access 2000 за остальные не ручаюсь
в конструкторе запроса: меню "Вид"->"Свойства запроса"
вкладка "Общие" 3-я строка сверху "Набор значений"

в 2002 я такого не нашёл......................

А что значит- ручками????
" А по поводу 3 записи по каждому году, то нужно, конечно ручками :((( "
писать запрос в ручную или выборку делать вручную???????????
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как в запросе вывести только 3 записи? / 25 сообщений из 30, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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