数据的增、删、改、查

数据的增加

增加数据的语法:

  insert into 表名[(字段1,字段2,...,字段n)] values(字段1的值,字段2的值,...,字段n的值)

  如:

  insert into stuinfo (stuno,stuname,stuage) values(1,‘张三',20)

注:字段的数据类型。

数据的修改

修改数据的语法:

  update 表名 set 字段1=修改值,...,字段n=修改值 where 逻辑表达式  

  如:

  update stuinfo set stuage=18 where stuno=1

数据的删除

数据删除的语法:

  delete 表名 [where 逻辑表达式]

  如:

  delete stuinfo  where stuno=1

数据的查询

数据查询的语法:

  select 要查的字段 from 表名 [where 逻辑表达式]

  如:select stuno,stuname,stuage from stuinfo where stuage>18

查询中常用的关键字、运算符、和函数

  order by关键字是对多条记录进行某种规则进行排序,一般来说是int类型的字段

      (asc 表示升序排列,desc表示降序排列)

  distinct 用于去除数据表中的才重复数据。

  group by 用于数据的分组,常与聚合函数和having关键字搭配使用。

  top 行数或百分数:用于查询数据的前多少行。

 

  算术运算符:+,-,*,/,%
    比较运算符:>,<,>=,<=,!=,<>,=
  逻辑运算符:逻辑与:and,逻辑或:or,逻辑非:not
  between and:在两个数值之间

  exist:存在

  not exist:不存在
  in:在集合中
  not in:不在集合中
  is null:是空
  is not nul:非空
  like:模糊查询
  newid();随机抽取数据
  with ties:显示并列的数据


  count:计数
  sum():计算总和
  avg():计算平均值
  max():得到最高分
  min():最低分

多表查询

查询方式一(多表联合):

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a,classinfo b where a.classno=b.classno and  stuno=1

 

 

 

查询方式二(多表联接):

  联接方式一(内联接):

 

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a
inner join classinfo b on a.classno=b.classno 
where stuno=1

 

 

 

  联接方式二(外联接):

    联接方式二还可以分为:

    方式一(左联接):

 

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a
left join classinfo b on a.classno=b.classno 
where stuno=1

 

 

 

    方式二(右联接):

 

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a
right join classinfo b on a.classno=b.classno 
where stuno=1

 

 

 

    方式三(完全外联接):

 

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a
out join classinfo b on a.classno=b.classno 
where stuno=1

 

 

 

  联接方式三(交叉联接):

 

select stuno,stuname,stuag,b.classno,b.classname from stuinfo a
cross join classinfo b 

 

 

 

查询方式三(子查询):

 

select stuno,stuname,stuag from stuinfo where classno in (select classno from classinfo)

 

 

 

把查询到数据批量插入到另一张表中的方法:

方法一:

  --采用insert into语句,前提:新表必须先存在
  insert into stuTemp select * from stu
方法二:

  --采用select into语句,前提:新表必须先不存在
  select * into stuTemp from stu

posted @ 2013-05-13 04:32  狼刺  阅读(272)  评论(0)    收藏  举报