2011-12-29 2 views
0

Предположим: У меня есть таблица, содержащая идентификатор книги, идентификатор студента и дату каждой книги, выписанной в этом году.Количество обращений, которые соответствуют единым критериям в OpenOffice или MS 97 или даже MySQL

Как я могу подсчитать количество книг, которые вычитали каждый ученик?

В настоящее время у меня +4000 студентов и +60000 выходов.

Вся эта информация хранится на сервере MySQL И у меня есть таблица Open Office Calc с этой информацией. У меня также установлен ACCESS97, поэтому, я думаю, я мог бы использовать код VBA для этого.

Единственный способ, которым я могу думать об этом, - сделать гигантское заявление LOOP с Access, чтобы считать все и скопировать все, что соответствует определенным критериям.

Но я уверен, что могу использовать некоторые команды SQL через Access, что сделало бы эту задачу немного быстрее.

ответ

1

Попробуйте эту команду SQL в Access:

SELECT student_id, count(book_id) AS num_of_books 
FROM myTable 
GROUP BY student_id 
+0

Удивительный! Любые советы по функциям SQL, которые я должен знать? Учебники, которые я прочитал, не касались такого рода вещей, и я просто понял, что есть СРЕДНИЕ, COUN, MIM, MAX и другие типы функций. –

2
select 
    student_id, 
    count(distinct book_id) number_of_books 
from 
    your_table 
group by student_id 
+0

Access говорит: 'ошибка синтаксиса на кол (отчетливый book_id)' –

+0

ой, который должен работать в MySQL, не знаю в доступе :). Для доступа вы можете удалить отдельные. Это было так, что студент несколько раз читал ту же книгу. –