Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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查询多个字段并为缺少的字段分配null_Mysql - Fatal编程技术网

mysql查询多个字段并为缺少的字段分配null

mysql查询多个字段并为缺少的字段分配null,mysql,Mysql,我有一个MySQL查询,需要从两个表(用户和cust)获取数据。所有用户都存在于用户中,由唯一用户名字段标识。它们可能存在于cust表中,位于同一字段名下 我想让我的查询做的是从用户那里获取某些字段的数据,并从cust获取几个字段的信息,如果它们存在,但如果它们不存在,这就是我的问题所在,我需要为响应分配一个空值 e、 g: 因此,我在用户中有758个条目将匹配此查询,但我的查询只返回648个b/c,其中110个用户不在cust中。如何修改我的查询,以便返回所有758条记录,并且110个用户的n

我有一个MySQL查询,需要从两个表(用户和cust)获取数据。所有用户都存在于用户中,由唯一用户名字段标识。它们可能存在于cust表中,位于同一字段名下

我想让我的查询做的是从用户那里获取某些字段的数据,并从cust获取几个字段的信息,如果它们存在,但如果它们不存在,这就是我的问题所在,我需要为响应分配一个空值

e、 g:

因此,我在用户中有758个条目将匹配此查询,但我的查询只返回648个b/c,其中110个用户不在cust中。如何修改我的查询,以便返回所有758条记录,并且110个用户的num、student和resident为空值?

这就是LEFT JOIN的作用:


您需要使用正确的外部联接。您当前正在进行内部联接

SELECT a.userName,b.num,a.firstName,a.lastName,b.student,b.resident \
FROM users a, cust b WHERE a.userName = b.userName AND \
a.created > "2014-06-02" AND a.dupe IS NULL
SELECT a.userName, b.num, a.firstName, a.lastName, b.studen, b.resident
FROM users a
LEFT JOIN cust b ON a.userName = b.userName
WHERE a.created > '2014-06-02' AND a.dupe IS NULL