Подзапрос в Access - PullRequest
       33

Подзапрос в Access

0 голосов
/ 25 декабря 2011

У меня есть 2 таблицы в Access с этими полями

Student:
ID(PK)   Name   Family Tel

Lesson:
ID StudentRef(FK(Student))  Name    Score

Представьте, что у нас есть эти записи

Student :
1     Tom      Allen      09370045230
2     Jim      leman      09378031380

Lesson:

1     1       Math           18
2     1       Geography      20
3     2       Economic       15 
4     2       Math            12

Как мне написать запрос, результатом которого будет это (2 поля)?

Tom      Math : 18    , Geography 20
Jim      Economic :15 ,  Math :12

Ответы [ 2 ]

2 голосов
/ 25 декабря 2011
SELECT s.Name, l.Name, l.Score
  INNER JOIN tbl_lessons as l ON s.student_id = l.student_id
FROM tbl_students as s

Это не даст вам форматирования, но даст вам данные.

0 голосов
/ 26 декабря 2011

Самая сложная часть вашей проблемы - как агрегировать строки в вашем подзапросе.MS Access не имеет функции агрегирования, которая применима к строкам (кроме Count()), и нет способа определить вашу собственную функцию.Это означает, что вы не можете просто получить желаемую конценентацию «предмет: балл, предмет: балл».Пока вы можете обходиться без вас, вы легко можете принять решение, предоставленное в ответе Корит Малин.

...