'SQLServer - Is it possible to divide the results of the same column?

I have a table containing the input and output parameters of different APIs. Here is the structure of my database :

API : API_ID (PK), API_URI, API_DATE, API_DESCRIPTION

RELATION : API_PAR_ID (PK), APIPAR_API_ID (FK), APIPAR_PAR_ID (FK)

Parametre : PAR_ID (PK), PAR_NOM, PAR_TYPE

The only way to differentiate if a parameter is input or output is the type. If the type is NULL ? It is an output parameter.

So, I would like to know if it is possible in a simple query to make the difference between the two. That is, in my SELECT displayed in one column the name of the input parameters and in another the output parameters, something that could look like this

SELECT
    [PAR_NOM] AS [INPUT]
    , [PAR_NOM] AS [OUPUT]
    , [PAR_type]
FROM Parametre AS P
    INNER JOIN RELATION AS R
        ON P.[PAR_ID] = R.[APIPAR_PAR_ID]
WHERE [APIPAR_PAR_ID] = 10

Or do I have to make two requests? One to get the input parameters, and another one for the output parameters? Knowing that the columns are important because I intend to use them in an API

Sample data :

API : 1, 'API/DOC/V1', '08/02/2022', 'First api'
API : 2, 'API/SERVER/V1', '10/01/2022', 'Api call for the server'
API : 3, 'API/CITY/V2', '15/03/2022', 'Api to get name of cities'

PARAMETRE : 1, CODE_PO, 'string'
PARAMETRE : 2, REF_SO, NULL
PARAMETRE : 3, NB_AR, NULL

RELATION : 1, 1, 1
RELATION : 2, 1, 2
RELATION : 3, 2, 3

Exemple result :

INPUT       OUTPUT      par_type
code_po     NULL        string
NULL        REF_SO      NULL
NULL        NB_AR       NULL


Solution 1:[1]

In addition to a case, you can use IIF.

SELECT IIF(PAR_type IS NOT NULL, PAR_NOM, NULL) [Input], IIF(PAR_type IS NULL, PAR_NOM, NULL) [Output], PAR_Type FROM Parametre

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 amrinea