Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Помогите поправить запрос / 6 сообщений из 6, страница 1 из 1
30.03.2010, 16:04
    #36550888
nec117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Сейчас запрос выглядит так:
Код: plaintext
1.
2.
3.
4.
SELECT surname_students, name_students, middle_students FROM truancy, students 
WHERE date_truancy LIKE '%янв.%'
AND id_students_truancy = ( SELECT link_students_groups FROM groups WHERE name_groups = 'П1-2' 
AND year_groups = '2000/2001' 
AND speciality_number_groups = '2203' );
Вообще мне нужно взять Ф.И.О. из таблицы students если в таблице truancy в поле date_truancy есть янв. И id_students_truancy совпадает c link_students_groups при заданных условиях.
Сейчас при таком запросе не выводит не чего
Если записать так:
Код: plaintext
1.
2.
SELECT surname_students, name_students, middle_students FROM truancy, students 
WHERE date_truancy LIKE '%янв.%'
AND id_students_truancy =  7 
То он выведет все данные из таблице students по многу раз.
В идеале мне еще надо получить из полученного ответа сумму id_students_truancy т.е. скажем студент прогулял две пары в таблице truancy будет две записи с его id, мне надо получить его Ф.И.О и число 2

Заранее благодарен.
...
Рейтинг: 0 / 0
30.03.2010, 18:03
    #36551254
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Приведи скрипт создающий таблицу и заполняющий эту таблицу тестовыми данными.
Покажи желаемый результат.
...
Рейтинг: 0 / 0
30.03.2010, 20:19
    #36551531
nec117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Truancy

Students

Groups

Truancy.id_students_truancy ссылается на студента прогульщика (students.id_students)
Пользователь вводит только группу: name_group, year_group, spicuality_number_groups и месяц например сент. (date_tuancy)
В данном примере я ожидаю увидеть
Александров | Алексей | Иванович | 14
14 - это число прогулов, т.е. сколько раз его id повторилось за заданный месяц.

Сам сейчас читаю про join вроде как раз он тут нужен, но пока не чего не получается.
...
Рейтинг: 0 / 0
30.03.2010, 20:47
    #36551568
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Приведи скрипт создающий таблицу и заполняющий эту таблицу тестовыми данными.
Покажи желаемый результат.
...
Рейтинг: 0 / 0
30.03.2010, 21:59
    #36551640
nec117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Код: plaintext
1.
2.
3.
4.
5.
SELECT s.id_students, s.surname_students, s.name_students, s.middle_students FROM truancy s0, students s, groups g
WHERE g.name_groups = 'П1-2'
and g.year_groups = '2000/2001'
and g.speciality_number_groups = '2203'
and s0.date_truancy LIKE '%сент.%'
AND s0.id_students_truancy = s.id_students
Вот так выводится ответь внутри которого 5-ть раз дублируется результат. Ожидаю увидеть 14 полей выводит 70.
...
Рейтинг: 0 / 0
30.03.2010, 22:05
    #36551643
nec117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите поправить запрос
Забыл сравнивать группу, вот так все нормально
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
SELECT s.id_students, s.surname_students, s.name_students, s.middle_students 
FROM truancy s0, students s, groups g
WHERE g.name_groups = 'П1-2'
and g.year_groups = '2000/2001'
and g.speciality_number_groups = '2203'
and g.link_students_groups = s.id_students
and s0.date_truancy LIKE '%сент.%'
AND s0.id_students_truancy = s.id_students
Осталось только посчитать одинаковые результаты
...
Рейтинг: 0 / 0
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Помогите поправить запрос / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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