【发布时间】:2020-07-27 14:11:41
【问题描述】:
我有 4 个要运行单个查询的表。我希望每个表中的特定值都与单个用户相关。
但是,其中一些表可能没有任何关联记录。如果给定表中没有记录,则查询集返回为空(因为表中没有与指定用户相关的记录)。
问题
我们如何为用户提取所有值并在没有值的列中插入空白/null?
我的查询:
SELECT PLAYER.UUID,
XP,
RANKS.RANKNAME,
HORSE.HEALTH_LEVEL,
HORSE.SPEED_LEVEL,
HORSE.JUMP_LEVEL,
special_weapons.name
FROM PLAYER,
HORSE,
RANKS,
Special_weapons
WHERE PLAYER.UUID = HORSE.UUID
AND PLAYER.RANKID = RANKS.RANKID
AND PLAYER.UUID = 'sldjnofw-adfdafd-113rsada'
AND Player.uuid = special_weapons.uuid;
我的表结构:
我的表格内容:
这种情况下的特殊武器表是空的。空白应该填充上述查询中的缺失列。而是返回一个空集。
【问题讨论】:
-
提示:
JOIN。JOIN。JOIN!!! -
就这些了吗?我正在通过 = 运算符加入基于 UUID 的字段。 'join' 关键字是否会自动填充空白/空值?