You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL RIGHT JOIN查询返回null而非实际名称,如何排查错误?

SQL查询问题排查与修正

现有查询的三处错误

  • 关联字段逻辑错误:你写的JOIN关联条件video.vidVideoID = copy.copCopyID不符合表结构设计逻辑。copCopyID是副本表自身的唯一标识主键,和视频主表的视频ID没有关联关系,副本表中存储对应视频ID的是专门的外键字段(可查看你copy表的字段列表确认字段名,通常命名类似copVideoID)。两个完全无关的字段做关联,自然匹配不到对应的视频信息,所以返回的视频标题等字段为null。
  • 筛选条件写反:你要查询未被借出的视频,copCurrentlyHired字段值为0才代表未借出,你当前写的=1是筛选已借出的副本,和需求完全相反。
  • JOIN类型冗余:你需要获取有对应视频信息的副本记录,用INNER JOIN就可以自动过滤掉匹配不到视频的无效副本,不需要用RIGHT JOIN。

修正后的查询示例

假设副本表中关联视频主表的外键字段名为copVideoID,如果你的表中该字段命名不同,替换为实际字段名即可,修正后的SQL语句如下:

SELECT 
   video.vidTitle, 
   video.vidCertificationID, 
   copy.copCurrentlyHired 
FROM video 
INNER JOIN copy ON video.vidVideoID = copy.copVideoID 
WHERE copy.copCurrentlyHired = 0; 

原问题附带的操作截图

phpMyAdmin操作截图

内容的提问来源于stack exchange,提问作者poop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 01:36:10