gpt4 book ai didi

mysql - 多个表的 SQL JOIN 清晰度

转载 作者:行者123 更新时间:2023-11-29 21:33:53 26 4
gpt4 key购买 nike

因此,我有一个无法更改的 SQL 架构,并且我正在尝试使用 GAS 脚本将数据拉出并放入 Google 表格中。它返回 0 个结果。如果我删除最后一个 JOIN 和最后一行 SELECT 列,我会得到 507 个结果。我知道这与在 FROM 子句中引用与主表不直接相关的表有关。已被删除了一步。

我希望能在这里接受一些教育......

:-)

PS:不,我没有编写/设计/命名架构/表/列,不幸的是我无权修改任何内容......只需阅读。

SELECT table_tasktime.tasktime_employee, table_tasktime.tasktime_task,
table_tasktime.tasktime_start, table_tasktime.tasktime_end,
table_taskgroups.taskgroup_task, table_taskgroups.taskgroup_group,
table_employees.employee_id, table_employees.employee_firstname,
table_employees.employee_lastname, table_tasks.task_name,
table_groups.group_id, table_groups.group_name
FROM table_tasktime
INNER JOIN table_taskgroups
ON table_taskgroups.taskgroup_task = table_tasktime.tasktime_task
INNER JOIN table_employees
ON table_employees.employee_id = table_tasktime.tasktime_employee
INNER JOIN table_tasks
ON table_tasks.task_id = table_tasktime.tasktime_task
INNER JOIN table_groups
ON table_groups.group_id = table_taskgroups.taskgroup_id
WHERE (table_tasktime.tasktime_start BETWEEN '2016-01-01' AND '2016-01-25 23:59:59')

最佳答案

快速了解连接:-使用 INNER JOIN,您将在连接两侧都可用谓词(ON)子句的情况下获取数据。使用 LEFT [OUTER] JOIN,您可以从左表(您要连接的表)获取数据,也可以从右表(该表“附加”在其存在的位置)获取数据。您还可以使用与左连接相反的 RIGHT [OUTER] JOIN 和 CROSS JOIN,它将为您提供两个表的完整笛卡尔积。

希望这可以帮助您作为起点。那里有很多东西。

关于mysql - 多个表的 SQL JOIN 清晰度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35050531/

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