如何构造此SQL SELECT查询?

如何构造此SQL SELECT查询?,sql,tsql,Sql,Tsql,我有两张桌子,我需要做一个特定的选择 第一个表是Employe,它有column Name*department_ID*和Salary 第二个表是department,其中包含colums department ID和*department\u名称* 我的SQL脚本必须为我提供部门名称、最高工资和最低工资,其中部门ID为“30”类似的内容应该可以解决这个问题(注意:所有拼写与您在第一篇帖子中给出的完全相同) “最大值和最小值”函数将为“薪资”列提供员工表的最大值和最小值。这将要求您使用GROUP

我有两张桌子,我需要做一个特定的选择

第一个表是Employe,它有column Name*department_ID*和Salary 第二个表是department,其中包含colums department ID和*department\u名称*


我的SQL脚本必须为我提供部门名称、最高工资和最低工资,其中部门ID为“30”

类似的内容应该可以解决这个问题(注意:所有拼写与您在第一篇帖子中给出的完全相同)


“最大值和最小值”函数将为“薪资”列提供员工表的最大值和最小值。这将要求您使用GROUP BY,因为他们需要根据一组数据计算最大值和最小值,在这种情况下,这些数据是按部门划分的最大值/最小值。我们按部门id分组,因为它是表的唯一键。内部联接用于联接现有的两个表。这是一个内部联接,因为我们希望部门参与查询。

您尝试了什么?它们是基本的查询…凌乱的连接:P当您这样做时,显式地
连接
,而不是将其隐藏在
中,而不是从
那里
:)当然,但是左连接在这里是一种过度使用;)Lol,这取决于你想如何处理没有员工的部门,如果你使用显式的
加入
,你只需将
左侧
更改为
内部
,就可以改变这一点了:)
   SELECT d.Department_Name AS name,
      MAX(e.salary) AS max_salary,
      MIN(e.salary) AS min_salary
   FROM Department d
   Inner JOIN Employee ON d.Department_ID = e.Department_ID
   WHERE d.Department_ID = 30
SELECT d.department_name,
       MIN(e.salary) AS 'Minimum Salary',
       MAX(e.salary) AS 'Maximum Salary'
FROM department d,employee e
WHERE d.department_id=30 AND d.department_id=e.department_id
GROUP BY d.department_name
SELECT  max(sal) as MaximumSalary
       ,min(sal)  as MinimumSalary
       ,department.Departament_Name
       ,employee.Name
FROM    employee
INNER JOIN department ON
            employee.departmentid = department.department_id
WHERE department.department_id = 31
GROUP BY department.department_id
   SELECT d.Department_Name AS name,
      MAX(e.salary) AS max_salary,
      MIN(e.salary) AS min_salary
   FROM Department d
   Inner JOIN Employee ON d.Department_ID = e.Department_ID
   WHERE d.Department_ID = 30