SQL таблица параметров - PullRequest
       6

SQL таблица параметров

0 голосов
/ 13 февраля 2020

Я подозреваю, что на этот вопрос уже дан хороший ответ, но, возможно, из-за ограниченного словарного запаса SQL мне не удалось найти то, что мне нужно. У меня есть база данных с множеством отображений описания кода в одной таблице параметров. Я хотел бы определить запрос или процедуру для возврата описаний для всех (или произвольного списка) кодированных значений в данной таблице «содержимого» с их описаниями из таблицы параметров. Я не хочу изменять исходные данные, я просто хочу отображать дружественные результаты.

  1. Есть ли стандартный способ сделать это?
  2. Может ли это быть выполнено с помощью SELECT или требуются другие операторы?

Вот пример запроса для одного кодированного поля:

SELECT TOP (5)
    newid() as id,
    B.BRIDGE_STATUS, 
    P.SHORTDESC      
FROM
    BRIDGE B
    LEFT JOIN PARAMTRS P ON P.TABLE_NAME = 'BRIDGE'
    AND P.FIELD_NAME = 'BRIDGE_STATUS'
    AND P.PARMVALUE = B.BRIDGE_STATUS
ORDER BY
    id

Я хочу производить «декодированные» результаты, такие как:

| id                                   | BRIDGE_STATUS |
|--------------------------------------|------------   |
| BABCEC1E-5FE2-46FA-9763-000131F2F688 |  Active       |
| 758F5201-4742-43C6-8550-000571875265 |  Active       |
| 5E51634C-4DD9-4B0A-BBF5-00087DF71C8B |  Active       |
| 0A4EA521-DE70-4D04-93B8-000CD12B7F55 |  Inactive     |
| 815C6C66-8995-4893-9A1B-000F00F839A4 |  Proposed     |

Вместо оригинальных кодированных данных, таких как:

| id                                   | BRIDGE_STATUS |
|--------------------------------------|---------------|
| F50214D7-F726-4996-9C0C-00021BD681A4 | 3             |
| 4F173E40-54DC-495E-9B84-000B446F09C3 | 3             |
| F9C216CD-0453-434B-AFA0-000C39EFA0FB | 3             |
| 5D09554E-201D-4208-A786-000C537759A1 | 1             |
| F0BDB9A4-E796-4786-8781-000FC60E200C | 4             |

, но для произвольного числа столбцов.

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