Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql sql列格式_Mysql_Sql_Formatting - Fatal编程技术网

Mysql sql列格式

Mysql sql列格式,mysql,sql,formatting,Mysql,Sql,Formatting,只是一个简单的问题 在MySQL中,如何将数值显示为字符串等价项 所以 所以如果我有像 SELECT object_name, object_status where object_status > 0 这件事又回来了 object#1, 1 object#2, 2 object#3, 1 object#4, 3 但我想让它展示出来 object#1, New object#2, Old object#3, New object#4, Cancelled 提前感谢KS您可以在这方面使

只是一个简单的问题

在MySQL中,如何将数值显示为字符串等价项

所以

所以如果我有像

SELECT object_name, object_status where object_status > 0
这件事又回来了

object#1, 1
object#2, 2
object#3, 1
object#4, 3
但我想让它展示出来

object#1, New
object#2, Old
object#3, New
object#4, Cancelled

提前感谢KS

您可以在这方面使用
案例

SELECT object_name,         
        CASE object_status 
            WHEN 1 THEN 'New'
            WHEN 2 THEN 'Old'
            WHEN 3 THEN 'Cancelled'
            ELSE NULL
        END status
where object_status > 0


您可以创建一个新的映射表并将这两个表连接在一起。新表将有两列—一列表示对象状态,另一列表示名称。那就加入这两个

SELECT s.object_name, sm.StatusName
FROM Status s
INNER JOIN StatusMapping sm on s.object_status = sm.object_status
WHERE s.object_status > 0

这将允许您在不更改查询的情况下根据需要添加新映射。

您总是比我快;)干杯,伙计们,就是这个!您最好改进您的模式并创建一个映射表。然后,您只需要连接,而不需要使用case语句等减慢查询速度。
SELECT object_name,         
        CASE 
            WHEN object_status = 1 THEN 'New'
            WHEN object_status = 2 THEN 'Old'
            WHEN object_status = 3 THEN 'Cancelled'
            ELSE NULL
        END status
where object_status > 0
SELECT object_name, 
 case object_status when 1 then 'New' 
  when 2 then 'Old' 
  when 3 then 'Cancelled' end as status
from myTable
where object_status > 0
SELECT s.object_name, sm.StatusName
FROM Status s
INNER JOIN StatusMapping sm on s.object_status = sm.object_status
WHERE s.object_status > 0