SQL server 基本增删改减(表内)

use mydb
--增
insert into Fruit(Ids,Name,Price) values(‘k008‘,‘榴莲‘,9.9)--增加时 主键不能为空,其他项系统默认为 NULL
insert into Fruit values(‘k009‘,‘甜瓜‘,4.8,‘淄博‘,80,‘image/4.gif‘)--所有列都添加,一个也不能落下
--删
begin tran
delete from Fruit --和begin tran 一块执行 数据能回复(roll back)
rollback
delete from Fruit where Ids=‘k008‘ --删除指定行

--修改
update Fruit set Source=null where Ids=‘k005‘ --修改指定行的某项数据
update Fruit set Numbers=65 where Ids=‘k002‘  --修改指定行的某项数据
update Fruit set Ids=‘k008‘where Name=‘甜瓜‘ and Price=‘4.80‘ --修改指定名称和价格的 Ids

--查询
select * from Fruit --查询所有
select Name,Price,Numbers  from Fruit --查询指定列
select Name as‘名称‘,Price as‘价格‘,Source as ‘产地‘ from Fruit --查询指定列,并改变 虚拟表 的列名称(数据库中表没变)
select * from Fruit where Ids=‘k001‘ --查询指定行
select * from Fruit where Price=2.4 and Numbers=65 --查行内所有信息(列指定条件)
select Name from Fruit where Numbers between 80 and 100--查行内名称(列指定条件)
select name from Fruit where Source in(‘烟台‘,‘广东‘)--只查指定地区的行内的名称
select distinct numbers from Fruit --去重查询数量(相同数量只显示一次)

select * from News
select * from News where title like ‘%大龄%‘--模糊查询,查带大龄的信息(%代表很多字符)
select * from News where title like ‘要爱情%‘--模糊查询,查以 要爱情开头的
select * from News where title like ‘%志在必得‘--模糊查询,查以志在必得结尾的
select * from News where title like ‘%农业户_‘--模糊查询,查农业户后只有一个字符的
select * from Fruit order by Numbers asc --按照数量升序排列(desc降序)
select * from Fruit order by Numbers desc,Price desc --按照数量降序排列,相同的在按价格降序排列

select * from Fruit --查询所有
select COUNT(*) from Fruit --返回fruit表里有多少条数据,有的企业为了节省资源 搜索 count(1)也可以,返回的是一个数字
select AVG(Price) as ‘平均价格‘ from Fruit --查询某一列的平均值,输出的是一个数字,列名用 平均价格 显示 SUM-数据和,MAX-最大值,MIN-最小值
select SUM(Numbers) from Fruit
select *,(price*0.8)as ‘折后价格‘ from Fruit --加一列数据库中没有的列,这里是加了一个8折后的价格列,显示为"折后价格"
select numbers,COUNT(1)from Fruit group by Numbers --根据某一列分组,求出该组内成员数量(根据number分组,相同number的被分为一组,并显示组内数量)
select Numbers,COUNT(*) from Fruit group by Numbers having COUNT(*)>1--根据numbers(列)分组,求出每组内成员数量,返回成员数大于1的组
时间: 2024-11-05 18:30:13

SQL server 基本增删改减(表内)的相关文章

SQL Server统计信息偏差影响表联结方式案例浅析

原文:SQL Server统计信息偏差影响表联结方式案例浅析   我们知道数据库中的统计信息的准确性是非常重要的.它会影响执行计划.一直想写一篇关于统计信息影响执行计划的相关博客,但是都卡在如何构造一个合适的例子上,所以一直拖着没有写.巧合,最近在生产环境中遇到这么一个案例,下面对案例中的相关信息做了脱敏处理,有些中间步骤也省略了,只关注核心部分SQL.如下所示,同事反馈一个SQL语句执行很慢.   UPDATE  b SET     b.[Status] = '已扫描,未签收' ,      

[SQL Server]一次执行资料夹内的.sql 指令码

原文:[SQL Server]一次执行资料夹内的.sql 指令码 初始资料库时,我们Developers们会准备很多.sql指令码来建立资料表.检视甚至初始资料,那麽要怎麽一次执行资料夹内的*.sql或是指定的几个.sql指令码? 来节省一点点初始化资料库的作业时间. 好在我们有MSDN使用sqlcmd 执行指令码的范例: sqlcmd -S myServer\instanceName -i C:\myScript.sql 如果只有几个,串成bat档或是powershell也很方便,但如果很多个

【转载】SQL Server - 使用 Merge 语句实现表数据之间的对比同步

原文地址:SQL Server - 使用 Merge 语句实现表数据之间的对比同步 表数据之间的同步有很多种实现方式,比如删除然后重新 INSERT,或者写一些其它的分支条件判断再加以 INSERT 或者 UPDATE 等.包括在 SSIS Package 中也可以通过 Lookup, Condition Split 等多种 Task 的组合来实现表数据之间的同步.在这里 "同步" 的意思是指每次执行一段代码的时候能够确保 A 表的数据和 B 表的数据始终相同. 可以通过 SQL Se

sql server快速删除整个数据库表和存储过程

情况:在远程数据库删除表执行太慢,表过多,数据库无权删除 结果:保留空数据库 方法:利用sql语句,查询网络文摘解决. 说明: 有些有约束,不能直接delete,需要先删除所有约束,语句: DECLARE c1 cursor for select 'alter table ['+ object_name(parent_obj) + '] drop constraint ['+name+']; ' from sysobjects where xtype = 'F' open c1 declare

四种简单的sql语句(增删改查语句)

四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 delete from [table] where column = ? 三.修改语句 update [table] set column = ? where column = ? 四.查询语句 1)查询单条记录的所有字段 select * from [table] where [column] = ? 2

sql server 查询数据库所有的表名+字段

原文:sql server 查询数据库所有的表名+字段 SELECT * FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME='Account' SELECT    (case when a.colorder=1 then d.name else '' end) as 表名,--如果表名相同就返回空       a.colorder as 字段序号,       a.name as 字段名,       (case when COLUMNPROPER

SQL Server 2008 查询所有用户表

SQL Server 2008 查询所有用户表的T-SQL语句是: SELECT * FROM sysobjects WHERE [xtype] = 'U' 或者是: SELECT * FROM sysobjects WHERE [type] = 'U' 关于xtype和type的区别,下篇日志里会讲到.SQL Server 2008 查询所有用户表

sql Server中临时表与数据表的区别

sql server 中临时表与数据表的区别 1.如何判断临时表和数据表已生成 --如何判断临时表是否已创建--- if exists(select * from tempdb..sysobjects where id=object_id('tempdb..#Temp_Student')) begin print '存在临时表'; end else begin print '不存在临时表'; end --如何判断数据表是否已创建--- if exists(select * from sys.ta

统计Sql Server数据库中的每张表的记录数

统计Sql Server数据库中的每张表的记录数 USE JYDB                   -- JYDB为你所在的数据库 GO select b.[name] '表名',max(a.rowcnt) '记录数'   from sysindexes a   join sys.objects b on b.object_id=a.id   where b.type='U'   group by b.[name]