gpt4 book ai didi

sql - Mysql Left Join Null 结果

转载 作者:IT老高 更新时间:2023-10-28 23:59:11 24 4
gpt4 key购买 nike

我有这个问题

SELECT articles.*, 
users.username AS `user`
FROM `articles`
LEFT JOIN `users` ON articles.user_id = users.id
ORDER BY articles.timestamp

基本上它返回文章列表和文章关联的用户名。现在,如果特定用户 ID 的用户表中没有条目,则 users var 为 NULL。无论如何,如果它为空,它会返回类似“未找到用户”的内容吗?还是我必须使用 php 来执行此操作?

最佳答案

用途:

   SELECT a.*, 
COALESCE(u.username, 'User Not Found') AS `user`
FROM ARTICLES a
LEFT JOIN USERS u ON u.id = a.user_id
ORDER BY articles.timestamp

文档:

选择 COALESCE 而不是 IF 或 IFNULL 的原因是 COALESCE 是 ANSI 标准,而其他方法无法在其他数据库上可靠地实现。在查看 IF 之前,我会使用 CASE,因为 CASE 是 ANSI 标准,可以更轻松地将查询移植到其他数据库。

关于sql - Mysql Left Join Null 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2894075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com