zoukankan      html  css  js  c++  java
  • 从SQL的视角用powershell

    SQL是数据处理中的利器,语法简单,表现力强。同时SQL作为说明型语言,让使用者关注在数据处理上。
    Powershell是微软提供的一个命令行工具。虽然在powershell中无法直接编写SQL,但是提供了一些命令,可以实现SQL中的SELECT语句。

    SQL主要分为

    DDL(Data Definition Language): CREATE ALTER DROP TRUNCATE COMMENT RENAME
    DML(Data Manipulation Language) : SELECT INSERT UPDATE DELETE
    DCL(Data Control Language): GRANT REVOKE
    TCL(Transaction Control): COMMIT ROLLBACK 

    使用最多的就是SELECT。

    SELECT的语法

    SELECT *
     FROM
    WHERE
    GROUP BY
    HAVING
    ORDER BY

    对应的数据流

    from table: 取数据
    where :对数据进行筛选
    group by 和 having:对数据进行汇聚,并对汇聚后的结果进行筛选
    order by:对数据进行排序
    select :选取结果

    powershell中的实现

    在powershell中无法直接编写SQL,但是提供了一些命令,可以实现SQL中的SELECT语句。

     主要涉及的命令有

    select: Select-Object
    where: Where-Object
    group by: Group-Object
    order by: Sort-Object
    from: get-childitem, get-service, Get-Command …
    having:where-object
    count/sum/avg/max/min: Measure-Object

    写法是按照上图中的数据流来的

    例子

    select *
     from all_service 
    where name='mysql'

    select type,count(*) 
    from all_service 
    group by status

     

    select type,count(*) 
    from all_service 
    group by status 
    having count(*)>120

     

    select file_type,count(*)
    from file_list
    group by file_type
    order by count(*) desc
    limit 5

     

    select count(*),sum(length),avg(length),max(length),min(length)
    from file_list

     

    select avg(cnt),max(cnt),min(cnt),sum(cnt)
    from(
    select file_type,count(*) cnt
    from file_list
    group by file_type
    )

     

    SQL的分类,主要参考:
    http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

  • 相关阅读:
    认识Python
    MongoDB
    K8S搭建过程随笔_证书CFSSL
    K8S搭建过程随笔_系统初始化
    zabbix4.2Proxy安装文档
    Zabbix4.2Server端部署
    单节点FastDFS与Nginx部署
    Windows Server 2016分层式存储,使用PowerShell修改底层介质类型
    kill命令和killall命令
    Nuget使用时遇到的问题,Solved
  • 原文地址:https://www.cnblogs.com/zhizhou/p/6259124.html
Copyright © 2011-2022 走看看