我是一个菜鸟,我只是在努力,2021正视自己,面对2021!

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封装了以上的所有的类

posted @ 2013-03-10 08:28  Kencery  阅读(1679)  评论(3编辑  收藏  举报
友情链接:初心商城