zoukankan      html  css  js  c++  java
  • SELECT 语句不详解

    INSERT INTO ...  SELECT 语句, 将查询的结果插入到一张新表中(可为临时表)

    DECLARE @MyTable Table
    (
        SalesOrderID int,
        CustomerId char(5)
    )
    
    INSERT INTO @MyTable
    SELECT SalesOrderID,CustomerID
    FROM AdventureWorks.Sales.SalesOrderHeader
    WHERE SalesOrderID BETWEEN 44000 AND 44010
    
    SELECT * FROM @MyTable


    联合查询:

    假设有两张表如下:

    Person表   和 Student表:

                            

    注意对比ID的值。 Person表为: 12347,    Student表为 12356

    inner join查询(inner通常可以省略):

    select p.Id, p.Name,s.ID,s.StuName
    from Person p inner join Student s on p.Id = s.ID
    

    结果:返回的是两张表共有的数据

    left outer jion查询,左外连接查询 (outer通常可以省略):

    select p.Id, p.Name,s.ID,s.StuName
    from Person p left join Student s on p.Id = s.ID
    

    结果: 返回的是 左边表的所有数据,右边表没有匹配项的用 NULL 表示

    right outer join查询, 右外连接查询(outer通常可以省略)

    select p.Id, p.Name,s.ID,s.StuName
    from Person p right join Student s on p.Id = s.ID
    

    结果:返回的是 右边表的所有数据,左边表没有匹配项的数据用 NULL 表示

    full outer join ,全连接查询 ,(outer通常可以省略)

    select p.Id, p.Name,s.ID,s.StuName
    from Person p full outer join Student s on p.Id = s.ID
    

    结果:返回两张表中的所有的数据,若没有匹配的使用NULL 表示


    对XML 数据的处理

    设计一张表如图:

    插入数据:

    insert into XMLtest(S_ID,S_Data)
    VALUES(1,'<学生信息><姓名>刘德华</姓名><性别>男</性别><班级>网络工程</班级><职位>班长</职位></学生信息>')
    

    查询可知:

    select * from XMLtest
    

    结果:

    双击后可查看:

    选择特定的列,返回特定的行进行查询:

    declare @data xml
    set @data = (select S_Data from XMLtest where S_ID = 1)
    SELECT @data.query('学生信息/姓名') 姓名, @data.query('学生信息/性别') AS 性别
    

    结果:

      

  • 相关阅读:
    Microsoft Azure 微软云平台系列新品发布
    python学习笔记(三)
    python学习笔记(一)
    python GUI编程(tkinter)
    python Tkinter之Button
    tkinter比较常用的组件
    tkinter窗口系列之一——列表框
    tkinter模块中常用的参数
    python的字符串操作函数之一览
    python之闭包
  • 原文地址:https://www.cnblogs.com/TangPro/p/3250791.html
Copyright © 2011-2022 走看看