簡體   English   中英

將列名的文本值轉換為查詢中的列

[英]Convert Text value of column name to Column in a query

我正在嘗試使用從解碼 function 推導出的文本動態獲取名為“abc”的列的值。 解碼 function 正在返回列的文本值,即“abc”,但不是動態的基礎值。 有沒有辦法做到這一點?

SELECT LOWER(DECODE('METRIC','METRIC','abc','MODEL','xyz','COUNTRY','US')) as abc FROM table_test

預期結果:

abc
---
1.2 
1.5
1.6
1.7

表測試:

在此處輸入圖像描述

如果你不能使用列作為DECODE中的值,你可能總是寫一個正則CASE表達式:

SELECT
    CASE metric WHEN 'METRIC'  THEN abc
                WHEN 'MODEL'   THEN xyz
                WHEN 'COUNTRY' THEN US END AS output
FROM table_test;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM