`
guiqing85
  • 浏览: 162721 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

T-SQL 简单的增 删 改 查

阅读更多
一:insert语句
into 关键字是可选的
values关键字前面的()是可选的,这里是要接收数据的列
values后面,有两种方式提供值
1:显式的给出值  2:从select语句中导出值

insert语句注意几点
1:不要理标志列,系统会给你插入的
2:给出实际的值,如果没有,那就null
3:给出默认的值,default关键字,告诉数据库取默认值

insert into ... select
什么时候会这么用,当成批的数据来自
1:数据库中的另一个表
2:同一台服务器完全不同的数据库
3:另一个SQLSERVER的数据库
4:来自同一个表中的数据
说实在的2和3我从来没用过

好,看一个例子
declare @mytable table
(
id int,
sortid int
);
insert into @mytable  (id,sortid)  select id,classid from product;
select * from @mytable;
注意我定义了一个表的对象
每一句之间是用分号隔开的
(id,sortid)  是可以忽略的


二:update语句
看例子
update e set e.flag = 'm'   from  employee  e  join contact ce on e.id = ce.employeeid where ce.name = 'jo'
这里用到了join子句,当然是可以用的
如果修改不止一列  只要加一个逗号
set   num = num * 1.2当然可以写表达式

三:delete语句
delete from actors from actors a  left join film f on a.filmid = f.filmid where f.filmid is null
outer连接将在没有匹配的一端返回null,
这里也就是film表没有匹配的行是null
注意   is null  的写法

四: select语句
这里还是不说了,还是多说说子句吧

五:where子句
1:
=    >     <    >=  <=    <>  !=  !>  !<
其中<>  与 !=都是不相等的意思
!>与!<不怎么常见,但仔细想想也没什么用处

2:
and   or   not 
如果一个where子句中同时出现这三个操作符
最先评估not   然后是and  然后是or

3:
between 例子 between 1 and 5   这个就不多说了

4:
like   例子:like "xland%"
%和_是通配符
%代表零个或多个任意字符
_表示单个任意字符
把字符包括在方括号中
[a-c]表示a b c都可行
[ab]表示a或b
^与not表示下一个字符将被排除掉

5:
in  例子  in ( 1,2,3)   这个也不多说了

六:order by子句
order by由于比较常用  我这里就不多说了
1:order by username  是可以识别中文的(sql先把中文转换成拼音再进行排序)
2:可以对 查询到的表中的任何列 进行排序  无论该列是否包含在select列表中
3:基于多个列的order by 
      例如:order by addtime,id
      先按时间排序,再在这个基础上根据id排序,你也看到了,性能是有很大幅度的降低的

七:distinct关键字
select  count(distinct  column) from table
检索某一列不重复的记录数

八:group by  聚集函数  和 having子句
先看例子:
select   orderid sum(orderMoney) from sales where orderid between 3 and 123 group by orderid
注意这里的orderid在表里是有可能重复的
这个语句的作用是检索出orderid从3到123的记录,
然后在这个记录集合上  以orderid分组
把orderid相同的数据分到一组  (这一组就是最终结果的一条记录)
然后通过sum函数把各组的orderMoney数据相加,
结果是最终结果的第二个字段

我发现用group  by子句基本上都是和聚集函数一起用的
举几个聚集函数的例子
sum 求和
avg求平均数
min/max求最大和最小值
count(表达式|*)获取一个查询中的行数
只说说count吧:
count(coloum)如果这一列有null,那么这些null的行将不会计算在内 
count(*)将得到表里的所有行的数目
聚集函数不一定非和group by一起使用不可
(另外avg基本上都是和group by一起使用的)

having子句是在组上放置条件的
看例子
select   orderid sum(orderMoney) from sales where orderid between 3 and 123 group by orderid  having sum(orderMoney)>5
group by得到了一个记录的集合
然后通过having子句,再在这个集合上做筛选
分享到:
评论

相关推荐

    C# Entity 增删改查入门实例

    很简单的一个Entity增删改查入门实例,同时提供了一个说明文档。

    T-SQL学习笔记.chm

    一:简单的语法知识 二:简单的增 删 改 查和一些相关子句 三:复杂一点的查询 四:约束 五:create drop alter 六:视图 七:存储过程与用户自定义函数 八:触发器 九:全文索引 十:游标

    MySQL数据库在idea中的增删改查,JDBC简化,JDBC工具类封装,orm模式,数据库三层架构,JDBC事务

    本项目为一个简单的JDBC项目,包括:MySQL数据库在idea中的增删改查,JDBC简化,JDBC工具类封装,orm模式,数据库三层架构,JDBC事务 新建一个ProductManager的项目,实现利用ORM思想和三层架构以下功能: t_product...

    C#连接数据库 —— (二)Linq To EF 的 lambda表达式使用 ,增删查改、判断、分组、排序

    如果不知道如何创建实体框架(EF)的伙伴,也不想上网...查询所有数据(对应SQL语句中的 in,这个例外): var ttlist = from cc in DataModelsDb.CheZhan select cc; foreach (var item in ttlist) { Console.Writ

    [开发工具] 代码生成器 My Generator 3.9.4.0

    支持根据数据库,直接导出VS2010项目,支持基本的增删改查 (请先重新编译项目和生成存储过程); 支持一键在数据库服务器端生成存储过程; 支持生成一份比较美观的HTML格式的数据库文档; 支持模板自定义和模板...

    Commons-dbutils1.7 jar包.rar

    简单来讲,这个工具包就是用来更加方便我们操作数据库的,最近工作中使用了一下,感觉确实方便很多,基本告别自己封装JDBC代码对数据库进行增删改查了。代码看着也很简洁。 例如: 增删改查使用的类:QueryRunner类+...

    java的轻量级orm工具包jdao.zip

    jdao是一个轻量级的orm工具包,通过简单配置或者连接数据库提供表名它便可以自动生成与数据库表一一对应的dao类,生成的dao类提供了与SQL无关的增删改查的功能。在复杂的查询SQL中,我建议编程人员自己编写高效的SQL...

    2009达内SQL学习笔记

    SQL语句是由简单的英语单词构成;这些英语单词称为关键字/保留字,不做它用。SQL由多个关键字构成。 SQL语句由子句构成,有些子句是必须的,有些是可选的。 在处理SQL语句时,其中所有的空格都被忽略(空格只用来...

    《C语言也能干大事》第十五节高清版

    增删改查:Insert、Delete、Update、Select。 SQL语句是大小写不敏感的 1、简单的Insert语句。向数据库中插入数据。Into后的列名和values一一对应,字符串用单引号 Insert Into T_Person(FName,FAge) values('Jim...

    cmd操作命令和linux命令大全收集

    49. mplayer2-------简易widnows media player 50. mspaint--------画图板 51. mstsc----------远程桌面连接 53. magnify--------放大镜实用程序 54. mmc------------打开控制台 55. mobsync--------同步命令 ...

    ssm框架酒吧系统完整导入可运行带sql

    增删改查t_goods; 我的网盘 uploadify上传图片 springmvc配置multipartResolver config.properties里配置: filereal=D:\\tomcat2\\apache-tomcat8090\\webapps\\img realPath=http://192.168.3.5:8090/img/ ...

    springmybatis

    mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现关联数据的查询 mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之...

    oracle实验报告

    在块中对数据库查询,增、删、改等对数据的操作是由SQL命令完成的。在PL/SQL块中,可以使用SQL的数据查询命令,数据操纵命令和事务控制命令。可使用全部SQL函数。PL/SQL中的SQL语句,可使用SQL的比较操作等运算符...

    springboot-util:Spring Boot 项目工具类,框架集成记录

    包括了一些配置信息与基本的增删改查代码,刚入门的同学可以参考这个 demo。 springboot-chart 柱状图、条形图、饼图数据的简单封装。在做一些报表统计时如果涉及到图表,可以参考这个 demo。 参考 的开源代码,修改...

    AppFramework数据库访问组件_代码生成插件_V1.1.rar

    除了实现数据的增删改查,数据访问层还要提供一些与业务无关功能,例如面向对象的持久化与访问机制、本地事务与分布式事务支持、多数据库支持,这些机制或功能形成相对独立的逻辑领域,其主要目的有: &lt;br&gt;1、 ...

    AppFramework_V1.0_New

    除了实现数据的增删改查,数据访问层还要提供一些与业务无关功能,例如面向对象的持久化与访问机制、本地事务与分布式事务支持、多数据库支持,这些机制或功能形成相对独立的逻辑领域,其主要目的有: &lt;br&gt;1、 ...

    AppFramework_V1.0

    除了实现数据的增删改查,数据访问层还要提供一些与业务无关功能,例如面向对象的持久化与访问机制、本地事务与分布式事务支持、多数据库支持,这些机制或功能形成相对独立的逻辑领域,其主要目的有: &lt;br&gt;1、 ...

    asp在线考试系统(asp+access实现)

    ☆试题库管理:分科目,对单选、多选两种题型试题库的管理,使试题的增删、编辑更为简便。 ☆试卷生成:可以指定试卷的各题型的数量,从试题库里随机抽取试题生成一份原始试卷。 ☆在线考试:系统严格控制整个考试...

    ASP设计在线考试系统OnlineTest

    ☆试题库管理:分科目,对单选、多选两种题型试题库的管理,使试题的增删、编辑更为简便。 ☆试卷生成:可以指定试卷的各题型的数量,从试题库里随机抽取试题生成一份原始试卷。 ☆在线考试:系统严格控制整个考试...

    ibatis 开发指南(pdf)

    创建测试数据库,并在数据库中创建一个t_user 表,其中包含三个字段: . id(int) . name(varchar) . sex(int) 。 3. 为了在开发过程更加直观,我们需要将ibatis 日志打开以便观察ibatis 运作的细节...

Global site tag (gtag.js) - Google Analytics