Сохранение данных в базе данных SQL Server 2016 для специального отчета - PullRequest
0 голосов
/ 24 мая 2018

Я не был уверен, как озаглавить это, но позвольте мне объяснить.Мне нужно вытащить все идентификаторы статьи публикации из PubMed для каждого члена онкологического центра.Идентификаторы обычно состоят из 6 или 7 дайджестов.В настоящее время я использую Stored Proc для сохранения идентификаторов в строке, разделенной запятыми, а адрес электронной почты является уникальным идентификатором участника.

INSERT INTO [dbo].[ADMIN_Publications] ([Organization], [email], [PMID])
VALUES (@Organization, @Email, @PMID, )

PMID может быть как

23579449,25465297,26512957,29092960,20303407,20411915,23424282

Я мог бы иметь 1000 членов с примерно 100 публикациями в каждом, но меньшее число составило бы около 125 членов, в среднем по 50 публикаций в каждом.

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

Например,

          a@med.edu, c@med.edu, k@med.edu
          20411915

затем следующий

          j@med.edu, c@med.edu, g@med.edu
          29092960

Хранение данных в виде строки, разделенной запятыми, затрудняет выход, если у кого-то нет секрета.Должен ли я сохранять каждый PMID отдельно с идентификатором электронной почты?Таким образом, у меня была бы другая таблица, в которой были бы только электронная почта и PMID, и я бы запросил эту таблицу.Есть ли лучший способ?

Спасибо

...