У меня сложный запрос SQL, который возвращает правильные значения, но в неправильном формате. Мой код ниже просматривает три отдельных столбца из одной таблицы, проверяет, являются ли они нулевыми, а затем связывает их вместе. Проблема заключается в том, что все они попадают в один столбец, озаглавленный после первого столбца, который я проверил, который был столбцом «А». Мне было интересно, как я мог бы решить эту проблему форматирования. Это в основном SQL, переносящий столбец в строку своего рода.
Я провел некоторые эксперименты, чтобы получить правильные значения и подтвердил, что работает правильно. Моя единственная проблема - правильное форматирование SQL.
SELECT `A` FROM sensor, login_users, relation
WHERE (login_users.id = relation.owner_id
AND relation.dev_id = sensor.Device_ID)
AND `A` IS NOT NULL
UNION
SELECT `B` FROM sensor, login_users, relation
WHERE (login_users.id = relation.owner_id
AND relation.dev_id = sensor.Device_ID)
AND `B` IS NOT NULL
UNION
SELECT `C` FROM sensor, login_users, relation
WHERE (login_users.id = relation.owner_id
AND relation.dev_id = sensor.Device_ID)
AND `C` IS NOT NULL
Это то, что SQL-запрос возвращает
A <-- column name
--------------
2.54 <-- A value
15.00 <-- B value
3.45 <-- C value
This is what I need it to return.
A B C
---- ----- -----
2.54 15.00 3.45
Кто-нибудь из удивительных людей SQL может помочь с этой проблемой форматирования? Я вообще неплохо разбираюсь с SQL, но этот меня озадачил.