Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9

Отображение учеников занимающихся одинаковым видом спорта

11.05.2011, 23:45. Показов 2263. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется База данных с списком учащихся (Номер личного дела,Фамилия,Имя,Отчество,Вид спорта)
Нужно написать программный код для того чтобы:
а)отображался список учеников занимающихся одинаковым видом спорта
б)отображался список учеников не занимающихся ни каким видом спорта
вот с Б намного проще, просто в базе данных, заместо прописание какого либо спорта,писал что ученик "не занимается" спортом, т.е. примерно (из SQL БД)
SQL
1
2
3
SELECT Ученики.[№ личного дела], Ученики.Фамилия, Ученики.Имя, Ученики.Отчество, Ученики.[Вид Спорта]
FROM Ученики
WHERE (((Ученики.[Вид Спорта])="Не занимается"));
А вот с А) совсем не получается...помогите пожалуйста...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.05.2011, 23:45
Ответы с готовыми решениями:

Запрос Отображение учеников, занимающихся одинаковым видом спорта
Задача: создать запрос,который будет отображать список учеников, занимающихся одинаковым видом спорта.. Буду примного благодарен за...

Вывести информацию о учащихся, занимающихся заданным видом спорта
нужно решить задачу на языке С++ с комментариями, вот условие: "В файле находится база данных "спортивная школа" (количество...

Вывести отдельно студенток и студентов, занимающихся конкретным видом спорта
Составить программу, которая вводит данные о студентах: № п/п, фамилию, год рождения, пол, курс, вид спорта и выводит: отдельно ...

11
283 / 262 / 32
Регистрация: 11.11.2009
Сообщений: 605
12.05.2011, 00:43
Цитата Сообщение от Samoilov91 Посмотреть сообщение
Имеется База данных с списком учащихся (Номер личного дела,Фамилия,Имя,Отчество,Вид спорта)
Нужно написать программный код для того чтобы:
а)отображался список учеников занимающихся одинаковым видом спорта
...........
А вот с А) совсем не получается...помогите пожалуйста...
Не получается потому что А это не один запрос, а 2 связанных. Первый возвращает все виды спортов в которых занимается более 1 ученика:
SQL
1
2
3
4
SELECT Ученики.[Вид Спорта]
FROM Ученики
GROUP BY Ученики.[Вид Спорта]
HAVING COUNT(*) > 1
А второй запрос использует выбранное поле от первого запроса и присвоив его параметру :VidSporta выполняет следующий запрос:
SQL
1
2
3
SELECT Ученики.[№ личного дела], Ученики.Фамилия, Ученики.Имя, Ученики.Отчество, Ученики.[Вид Спорта]
FROM Ученики
WHERE (((Ученики.[Вид Спорта])=:VidSporta))
Совет: не используйте русские названия в названиях таблиц и полей - никогда не знаешь где выйдет проблема.
2
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9
12.05.2011, 09:32  [ТС]
Спасибо но,во втором запросе выдаёт лишь запрос на Ввод названия спорта....А хотелось бы чтобы просто сразу отобразил всех студентов, у которых более 1ного вида спорта одинакового....Мб просто я не связал эти запросы...просто не умею....
Pss для программного кода в Делфи, а точнее для кнопки Button тот же самый SQL код из Access можно использовать? Или что то прийдётся поменять?
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
12.05.2011, 10:33
Зачем для решения таких задачек нужен делфи ? Ведь все легко решается на "чистом" акцесе и даже экселе
0
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9
12.05.2011, 10:49  [ТС]
Ну это не моя прихоть....Сказали сделать через делфи....
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
12.05.2011, 12:47
Ну тогда делайте как сказали в [2], только вот идею с "Не занимается" закиньте.
Отсутствие записей по студенту в таблице видов уже указывает на то, что он не спортсмен
0
283 / 262 / 32
Регистрация: 11.11.2009
Сообщений: 605
12.05.2011, 17:51

Не по теме:

не могу писать в запросе по русски, тяжело мне :)


Вот вам английский вариант запроса который возвращает всех студентов, которые задействованны в спорте в котором занимаются более 1 человека:
T-SQL
1
2
SELECT * FROM Ucheniki U
   WHERE (SELECT Count(*) FROM Ucheniki U2 WHERE U2.Sport = U.Sport) > 1
Запрос для практически любого SQL server, но для Access не сработает, там надо чуть иначе писать второй select, но так как вы не указали БД, я пишу основной вариант.
2
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9
12.05.2011, 19:53  [ТС]
Можно уточнить поконкретнее Про Б
А вот еще Ucheniki U это название таблици,что такое Ucheniki U2, и U2 Sport
0
283 / 262 / 32
Регистрация: 11.11.2009
Сообщений: 605
12.05.2011, 20:45
Цитата Сообщение от Samoilov91 Посмотреть сообщение
Можно уточнить поконкретнее Про Б
А вот еще Ucheniki U это название таблици,что такое Ucheniki U2, и U2 Sport
"FROM [Ученики] as U" означает использовать таблицу [Ученики] с дальнейшим обращением к ней - U (алиас). "as" можно пропускать. Все русские названия таблиц и полей рекомендую брать в квадратные скобки

Вот вам собственно запрос который вам нужен:
T-SQL
1
2
3
SELECT [№ личного дела], Фамилия, Имя, Отчество, [Вид Спорта]
FROM [Ученики] as U
WHERE (SELECT COUNT(*) FROM [Ученики] as U2 WHERE U2.[Вид Спорта]=U.[Вид Спорта]) > 1
2
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9
16.05.2011, 20:37  [ТС]
Всем спасибо!Но есть маленькое затруднение
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TForm1.Button1Click(Sender: TObject);
begin
adodataset1.Close;
if edit1.Text<>' '
then
AdoDataSet1.CommandText:= 'select * from ученики where [вид спорта] like '''+edit1.text+'%'''
else
 AdoDataSet1.CommandText:= 'select * from ученики';
 
 AdoDataSet1.Open;
 
end;
 
end.
Вот это запрос на то, чтобы я вводил название спорта и он выводится, но не могу разобраться с отображением пустой записи....а точнее с Null....незнаю куда его пихнуть....помогите прошу...
0
283 / 262 / 32
Регистрация: 11.11.2009
Сообщений: 605
17.05.2011, 03:11
SQL
1
SELECT * FROM ученики WHERE [вид спорта] IS NULL
1
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 9
17.05.2011, 14:41  [ТС]
Все всем спасибо, решил свою проблему
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.05.2011, 14:41
Помогаю со студенческими работами здесь

Узнать ФИО спортсменов, занимающихся более 5 видами спорта
Есть табличка с полями: id, название соревнования, ФИО спортсмена, вид спорта. Нужно вывести тех спортсменов, которые занимаются более 5...

Занимаетесь ли вы каким-нибудь видом спорта?
Всем, добрый день, Занимаетесь ли Вы чем-то щас?, спорт зал не считается, так как это заезженное.

Вывести студентов, которые занимаются конкретным видом спорта и их количество
Доброго времени суток. В университете задали эти задания по информатике (PascalABC). Сама полный ноль в этом, друзья посоветовали написать...

Отображение сайта во всех браузерах одинаковым
Доброго времени суток. Сайт во всех браузерах отображается по разному. Проверяю в хроме, мозиле, яндексе, сафари. А в чужом компе вообще...

В массиве записаны оценки по информатике 22 учеников класса. Определить количество учеников
В массиве записаны оценки по информатике 22 учеников класса. Определить количество учеников, оценка которых меньше средней оценки по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru