AlexK_UA
22-02-2012, 14:24
Доброго времени суток, посетители форума !
Для начала общая информация ... У нас компания где ведется учет моряков и пройденных ими курсов(курсы у нас же и проводятся), они получают сертификат, а мы фиксируем это в базу, таким образом - ФИО моряка, еще пару маловажных полей с общими данными и дальше столбики связанные с пройденными им курсами, Номер сертификата, столбик Название курса, дата начала курса, дата окончания, кол-во дней курса, последнее судно на момент прохождения того или иного курса, последнее звание, последний офис. Все это сделано в виде "вертикальной"таблицы, упрощенный вариант представлен ниже, т.е. в реальной таблице примерно 12 столбиков и несколько тысяч строк, при этом ФИО моряка может повторятся в зависимости от пройденных им курсов, исходя из таблицы-примера, Иванов прошел 3 курса и соответственно за ним 3 строки в базе (всего курсов в реальной базе порядка 29-30).
Name CertN LastVessel CourseName
Ivanov od001 Vessel1 Course1
Ivanov od001 Vessel2 Course2
Ivanov od002 Vessel2 Course3
Petrov od002 Vessel3 Course1
Petrov od003 Vessel3 Course2
Petrov od001 Vessel4 Course3
Sidorov od002 Vessel5 Course2
Sidorov od001 Vessel5 Course4
Я только в общих чертах работал в Access, по-этому следующая задача для меня представляется довольно сложной, хотя немного поработал с несложными запросами и имею некоторое представление, а нужно сделать следующее... перевести данную таблицу в такой вид:
Name Course1 LastVesselCourse1 Course2 LastVesselCourse2 Course3 LastVesselCourse3 Course4 LastVesselCourse4
Ivanov od001 Vessel1 od001 Vessel2 od002 Vessel2
Petrov od002 Vessel3 od003 Vessel3 od001 Vessel4
Sidorov od002 Vessel5 od001 Vessel5
Т.е. необходимо перевести таблицу грубо говоря к горизонтальному виду в которой у отдельно взятого моряка будет только 1 строчка в которой будут перечисляться все его курсы, а столбиками станут названия курсов и что самое сложное, в качестве информации в столбике курса будет отображаться номер сертификата при этом у каждого курса будет столбик с информацией по последнему судну, последнему офису, последнему званию, в данном примере я только судно показал для простоты. Так на вскидку должно таким образом получится более 100 столбиков в реальной таблице (29 курсов плюс 3-4 столбика к каждому курсу по данным о последнем судне и т.д. плюс общая информация, неск. столбиков). При этом особенность, номера сертификатов могут повторятся, так как это не абсолютные значения, номера сертификатов присваиваются как-то в зависимости от группы занимающихся.
В общем 2 вопроса:
1. Реально ли такое сделать в принципе ?
2. Если да, то могу ли я рассчитывать на помощь посетителей форума? :)
Для начала общая информация ... У нас компания где ведется учет моряков и пройденных ими курсов(курсы у нас же и проводятся), они получают сертификат, а мы фиксируем это в базу, таким образом - ФИО моряка, еще пару маловажных полей с общими данными и дальше столбики связанные с пройденными им курсами, Номер сертификата, столбик Название курса, дата начала курса, дата окончания, кол-во дней курса, последнее судно на момент прохождения того или иного курса, последнее звание, последний офис. Все это сделано в виде "вертикальной"таблицы, упрощенный вариант представлен ниже, т.е. в реальной таблице примерно 12 столбиков и несколько тысяч строк, при этом ФИО моряка может повторятся в зависимости от пройденных им курсов, исходя из таблицы-примера, Иванов прошел 3 курса и соответственно за ним 3 строки в базе (всего курсов в реальной базе порядка 29-30).
Name CertN LastVessel CourseName
Ivanov od001 Vessel1 Course1
Ivanov od001 Vessel2 Course2
Ivanov od002 Vessel2 Course3
Petrov od002 Vessel3 Course1
Petrov od003 Vessel3 Course2
Petrov od001 Vessel4 Course3
Sidorov od002 Vessel5 Course2
Sidorov od001 Vessel5 Course4
Я только в общих чертах работал в Access, по-этому следующая задача для меня представляется довольно сложной, хотя немного поработал с несложными запросами и имею некоторое представление, а нужно сделать следующее... перевести данную таблицу в такой вид:
Name Course1 LastVesselCourse1 Course2 LastVesselCourse2 Course3 LastVesselCourse3 Course4 LastVesselCourse4
Ivanov od001 Vessel1 od001 Vessel2 od002 Vessel2
Petrov od002 Vessel3 od003 Vessel3 od001 Vessel4
Sidorov od002 Vessel5 od001 Vessel5
Т.е. необходимо перевести таблицу грубо говоря к горизонтальному виду в которой у отдельно взятого моряка будет только 1 строчка в которой будут перечисляться все его курсы, а столбиками станут названия курсов и что самое сложное, в качестве информации в столбике курса будет отображаться номер сертификата при этом у каждого курса будет столбик с информацией по последнему судну, последнему офису, последнему званию, в данном примере я только судно показал для простоты. Так на вскидку должно таким образом получится более 100 столбиков в реальной таблице (29 курсов плюс 3-4 столбика к каждому курсу по данным о последнем судне и т.д. плюс общая информация, неск. столбиков). При этом особенность, номера сертификатов могут повторятся, так как это не абсолютные значения, номера сертификатов присваиваются как-то в зависимости от группы занимающихся.
В общем 2 вопроса:
1. Реально ли такое сделать в принципе ?
2. Если да, то могу ли я рассчитывать на помощь посетителей форума? :)