zoukankan      html  css  js  c++  java
  • --三种方法查询人所在部门平均工资

    --建表

    IF OBJECT_ID(N'Emp','U') IS NOT NULL

        BEGIN

            PRINT 'This table have been existed';

           

        END

    ELSE

        BEGIN

            CREATE TABLE [dbo].[Emp]

            (

                [Name]       NVARCHAR(50) ,

                [Slary]      INT,

                [DepID]      INT

              

            )

     

             INSERT INTO [Emp]

               SELECT N'张三', '100', 1

               UNION ALL

               SELECT N'李四', '200', 1

               UNION ALL

               SELECT N'王五', '200', 2

               UNION ALL

               SELECT N'张麻子', '300', 2

               UNION ALL

               SELECT N'一柱擎天', '300', 2

               UNION ALL

               SELECT N'陈勃', '400', 3

                 

        END

    -------------------------------------------------------------------------------------------------------------------------

    --方法:Nested Loop

    SELECT a.*,(SELECT AVG(Slary) FROM [Emp] b WHERE b.DepID=a.DepID ) 

      FROM [Emp] a

    --方法:开窗

    SELECT *, AVG(Slary) OVER(PARTITION BY DepID)

      FROM [Emp] 

    --方法:

    SELECT a.*, b.Avg

      FROM [Emp] a INNER JOIN (SELECT DepID, AVG(Slary) Avg FROM [Emp] GROUP BY DepID) b ON a.DepID=b.DepID 

  • 相关阅读:
    46. 全排列
    90. 子集 II
    289. 生命游戏
    844. 比较含退格的字符串
    1266. 访问所有点的最小时间
    707. 设计链表
    DOM 关于dom的
    插件库
    浏览器判断
    FTP 客户端安装
  • 原文地址:https://www.cnblogs.com/sthinker/p/5735259.html
Copyright © 2011-2022 走看看