Сортировка по ряду в Microsoft Access - PullRequest
0 голосов
/ 05 сентября 2011

Мне нужно переставить столбцы в таблице в порядке, указанном в строке.

Итак, если бы у меня было:

one    four    two    three
 1       4      2       3

Как я мог получить:

one    two    three    four
 1      2       3       4

Я рассмотрел создание новой таблицы, просмотр каждого элемента и его соседа по отдельности, копирование самого нижнего элемента в новую таблицу и повторение по всей таблице, пока все элементы не переместятся.

Будет ли этот метод работать?Если это необходимо, я делаю это в VBA (у меня нет большого опыта с этим)?Или есть метод в SQL?

Спасибо за любую помощь.

Ответы [ 2 ]

3 голосов
/ 05 сентября 2011

SQL основан на реляционной модели данных.Один из принципов реляционной модели заключается в том, что порядок столбцов не имеет смысла.

Но если вам абсолютно необходимо сделать это в Access, используйте запрос, форму или отчет.Вы можете расположить столбцы в любом порядке в любом из этих трех, и это никак не повлияет на базовую таблицу.

0 голосов
/ 06 сентября 2011

Если порядок элементов важен, они обычно хранятся в строках, а не в столбцах, например, в таблице со следующими полями: StudentID, ExamID, ExamDate можно отсортировать по StudentID и ExamDate, чтобы получить полезный порядок, независимо отпорядок входа.Кроме того, перекрестный запрос позволит представлять данные в столбцах.

Если порядок столбцов стал важным, это почти всегда является признаком ошибки в дизайне таблицы.Вы можете прочитать Основы проектирования реляционных баз данных, Пол Литвин, 2003

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...