Py学习  »  DATABASE

mysql根据其他列的值返回十进制列作为字符串值

sandeep.mishra • 5 年前 • 1496 次点击  

我有一张像下面这样的桌子

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

我想将hour列作为输出表中提到的字符串返回。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43262
 
1496 次点击  
文章 [ 2 ]  |  最新文章 5 年前
sal
Reply   •   1 楼
sal    6 年前

你是说“ 如字符串所述 “作为数据类型还是字符串格式? 我想您不需要带引号的字符串,只需要转换值:

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

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

lucumt
Reply   •   2 楼
lucumt    6 年前

如果你的逻辑是 PTO 什么时候 subtask PTO ,则可以使用以下命令:

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