簡體   English   中英

MySQL返回十進制列作為基於其他列值的字符串值

[英]Mysql return decimal column as string value based on the other column value

我有一個像下面的桌子

id   Hour   Subtask
 ---  ----   --------
 1     5      Coding
 2     0      PTO

I need the output like below

 id   Hour   Sub task
 ---  ----   --------
 1     '5'     Coding
 2     'PTO'    PTO

我想將小時列作為字符串返回,如輸出表中所述。

如果你的邏輯是更改小時,PTOsubtaskPTO,那么你可以使用如下:

SELECT ID,IF(subtask='PTO','PTO',CONCAT("'",HOUR,"'") as hour,subtask FROM yourtable 

您是說“ 作為字符串提及 ”是數據類型還是字符串格式? 我猜您不需要帶引號的字符串,而是強制轉換值:

SELECT id, if(Subtask='PTO',Subtask,cast(Hour as char)) Hour, Subtask

要么

SELECT id, if(Hour=0,Subtask,cast(Hour as char)) Hour, Subtask

暫無
暫無

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

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