zoukankan      html  css  js  c++  java
  • SQL Server高级内容之表表达式和复习

    1 表表达式

      (1) 将表作为一个源或将查询的一个结果集作为一个源,对源做处理,然后得到一个新的数据源,对其进行查询。

       (2)表表达式放在from子句中

       (3)派生表,将表的查询得到的结果集作为一个新的数据源,需要注意一下几点:

        1)派生表必须有括号括起。

        2)派生表需要取别名

        3)派生表中的所有字段也要有别名(必须要给字段起名)

        4)能够作为派生表的只有结果集(游标不行)。

       (4)写一段SQL语句,大家可以体会一下,这里就不提供数据库了。

     1 select * from 
     2 
     3 (
     4 
     5     select s1.stuID,
     6 
     7     s1.stuName,
     8 
     9     case s1.stuSex
    10 
    11         when 'f' then ''
    12 
    13         else ''
    14     
    15     end as stuSex,
    16 
    17     datediff(yy,s1.stuBirthdate,getdate()) as stuAge,
    18 
    19     convert(varchar(10),s1.stuStudyDate,101) as stuStudyDate,
    20 
    21     s1.stuEmail,
    22 
    23     s1.stuPhone,
    24 
    25     s2.testBase,
    26 
    27     s2.testBeyond,
    28 
    29     s2.testName,
    30 
    31     convert(varchar(10),s2.testDate,101) as testDate,
    32 
    33     s3.className,
    34 
    35     s3.classDescription
    36 
    37         from
    38 
    39         Student as s1
    40 
    41             inner join
    42 
    43         Score as s2
    44 
    45             on s1.stuID=s2.stuID
    46 
    47         inner join
    48 
    49             Course as s3
    50 
    51         on s1.classID=s3.classID
    52 
    53             where
    54 
    55         s1.stuIsDel=0
    56 
    57         ) as tb1
    58 
    59         where
    60 
    61             tb1.stuAge=20
    62 
    63         and
    64 
    65             tb1.stuSex='' 

    2 SQLHelper的一些知识点

        (1) SqlConnection用来连接数据库

        (2)SqlCommand用来执行SQL语句

        1)参数化查询: SqlParameter

        2)执行方法

          ->ExecuteNonQuery() 执行增删改,返回首影响的行数

          ->ExecuteScalar() 读取第一行第一列的数据,并且以Object的形式返回。

          ->ExecuteReader() 返回DataReader

        (3)SqlDataReader用来读取每一条数据

        (4) SqlDataAdapter封装了以上的所有的类

  • 相关阅读:
    php require与include的区别
    php页面消耗内存过大处理办法
    flex if(a is b){},flex if(a as b){} 意思
    thinkphp的配置文件修改后不起作用
    ThinkPHP 入口文件定义 3.0 输出两次解决办法
    JS中的Math.ceil和Math.floor函数
    ThinkPHP 配置问题
    Google 快照无法使用时,如何恢复
    首页被收录了,但是只显示网址,处理办法
    RED5 端口使用
  • 原文地址:https://www.cnblogs.com/hanyinglong/p/2952313.html
Copyright © 2011-2022 走看看