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

如何合并SQL查询结果,关联学生表与借书表获取邮箱和借书日期

解决方案

你需要通过表关联实现多表字段同时查询,使用INNER JOIN关联学生表和借书表即可,既可以返回指定的邮箱、借书日期字段,也可以直接查两个表的全部字段:

返回指定字段(邮箱+借书日期)

SELECT 
    s.Email, b.`Borrowed Date`
FROM
    student_table s
INNER JOIN 
    borrowed_table b ON s.StudentID = b.`Borrowed By (Student ID)`
WHERE
    b.`Book Title` = 'Some Book';

返回两个表全部字段

SELECT 
    *
FROM
    student_table s
INNER JOIN 
    borrowed_table b ON s.StudentID = b.`Borrowed By (Student ID)`
WHERE
    b.`Book Title` = 'Some Book';

注:你之前使用子查询加等于号的写法,在对应书名有多条借阅记录时会触发运行错误,JOIN写法可以规避该问题。


关于能否使用UNION of * 实现的说明

该需求无法用UNION实现,原因如下:

  • UNION的作用是将多个查询的结果按行纵向合并,要求所有参与UNION的查询结果列数、对应列的数据类型完全一致,你的学生表只有2个字段、借书表有3个字段,列数不匹配,无法直接执行UNION操作。
  • 你需要的是将两个表的字段横向拼接在同一行展示,属于表关联场景,只能用JOIN类语法实现,UNION的能力完全不匹配该需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 23:27:03