Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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
CASE'的mysql语法;非空';在SELECT中使用时_Mysql - Fatal编程技术网

CASE'的mysql语法;非空';在SELECT中使用时

CASE'的mysql语法;非空';在SELECT中使用时,mysql,Mysql,我试图在SELECT语句中使用CASE'notnull',但我一直收到以下错误消息: 您的SQL语法有错误;检查手册 对应于正确语法的MySQL服务器版本 我还尝试了案例的这些不同格式: (CASE WHEN ph.thumbsize IS NOT NULL THEN 'ph.thumbsize' ELSE 'defaultpicture.jpg')as picture CASE WHEN ph.thumbsize IS NOT NULL THEN ph.

我试图在
SELECT
语句中使用CASE
'notnull'
,但我一直收到以下错误消息:

您的SQL语法有错误;检查手册 对应于正确语法的MySQL服务器版本

我还尝试了
案例
的这些不同格式:

(CASE WHEN ph.thumbsize IS NOT NULL THEN 'ph.thumbsize' ELSE
 'defaultpicture.jpg')as picture       

           CASE WHEN ph.thumbsize IS NOT NULL THEN ph.thumbsize ELSE defaultpicture.jpg
试试这个:

SELECT 
    u.id,
            CASE  ph.thumbsize WHEN NULL THEN ph.thumbsize ELSE 'defaultpicture.jpg' END

        FROM
        user u  
        LEFT OUTER JOIN
            list_photos ph
    ON 
            u.id = ph.userId;

如果您需要在结束前关闭它,除了其他一些小问题外,您还缺少一个结束。尝试:

SELECT 
    u.id,
    CASE WHEN (ph.thumbsize IS NULL) THEN 
        'defaultpicture.jpg'
    ELSE
        ph.thumbsize
    END AS picture
FROM
    user u  
LEFT OUTER JOIN
    list_photos ph
ON 
    u.id = ph.userId;
为什么不使用:


…,如果NULL(ph.thumbsize,'defaultpicture.jpg')作为图片,

结束案例
用于,而不是用于。嘿,Fabien。这比实际情况快吗?两者之间没有明显区别。只是更容易编码。或者您也可以用同样的方法使用
合并
<代码>合并
在内部转换为
大小写
语句
SELECT 
    u.id,
    CASE WHEN (ph.thumbsize IS NULL) THEN 
        'defaultpicture.jpg'
    ELSE
        ph.thumbsize
    END AS picture
FROM
    user u  
LEFT OUTER JOIN
    list_photos ph
ON 
    u.id = ph.userId;