因此,我拥有无法更改的SQL模式,并且尝试使用GAS脚本将数据提取到Google表格中。它返回0个结果。如果删除SELECT列的最后一个JOIN和最后一个(对应)行,则会得到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,这将为您提供两个表的完整笛卡尔积。

希望这对您有所帮助。有很多东西。

10-08 03:10