Как получить многострочные данные одного столбца в одну строку одного столбца - PullRequest
0 голосов
/ 13 мая 2010

Мне нужно получить данные в несколько строк одного столбца.

Например, данные из этого формата

ID Проценты

  1. Спорт
  2. Кулинария
  3. Фильм
  4. Чтение

в этот формат

ID Проценты

  1. Спорт, Кулинария
  2. Movie, Чтение

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

Ответы [ 4 ]

1 голос
/ 13 мая 2010

Взгляните на подход Аллена Брауна: Объедините значения из связанных записей

Что касается аргумента нормализации, я не предлагаю вам хранить объединенных значений. Но если вы хотите объединить их для демонстрации (например, отчета или формы), я не думаю, что вы нарушаете правила нормализации.

0 голосов
/ 13 мая 2010

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

(Имейте в виду, вопрос кевчаддера правильный.)

0 голосов
/ 13 мая 2010

Вы изучили операцию SQL Pivot? Взгляните на эту ссылку: http://technet.microsoft.com/en-us/library/ms177410.aspx

Только что заметил, что вы используете доступ. Посмотрите на эту статью: http://www.blueclaw -db.com / accessquerysql / pivot_query.htm

0 голосов
/ 13 мая 2010

Это ничего не нужно делать в SQL, и, скорее всего, это вообще невозможно.

Объединение строк в коде вашего приложения не должно быть слишком сложным.

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