Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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返回大小写值_Mysql_Case - Fatal编程技术网

MySQL返回大小写值

MySQL返回大小写值,mysql,case,Mysql,Case,我正在寻找一种方法来返回“case”-ed on的值 e、 g.如果不在then语句中重新计算md5结果,将返回什么结果 SELECT CASE md5(col1,col2,col3,...,coln) WHEN MD5('') then NULL else ??? end 如果不想在“选择”列表中多次重复计算,则需要将其推入子查询并引用子查询中设置的字段别名: SELECT CASE t1.calc WHEN MD5('') then NULL

我正在寻找一种方法来返回“case”-ed on的值

e、 g.如果不在then语句中重新计算md5结果,将返回什么结果

SELECT 
CASE md5(col1,col2,col3,...,coln) 
WHEN MD5('') then NULL 
else ???
end

如果不想在“选择”列表中多次重复计算,则需要将其推入子查询并引用子查询中设置的字段别名:

SELECT 
    CASE t1.calc 
        WHEN MD5('') then NULL 
        else t1.calc
    end as md_5
FROM
    (select md5(col1,col2,col3,...,coln) as calc from table) t1

重复statement@juergend谢谢,但这正是我想要避免的。这是关于代码重复还是性能的问题?@PaulSpiegel code duplication