很高兴来回答这个问题!
SQL常用语句
插入语句:
基本插入语句:
insert into table_namevalues (value1,value2,value3,...); (table_name:表名称)
延伸插入语句:
从一个表复制数据,然后把数据插入到一个已存在的表中:
insert into table2select * from table1;
只复制希望的列插入到另一个已存在的表中:
insert into table2 (column_name(s)) select column_name(s) from table1; (column_names:列名)
2.查询语句:
基本查询语句:
select * from table_name ----查询整个表select column_name,column_name from table_name; ----查询表中的某一列
条件查询语句 :
select * from table_name where some_column=some_value or some_column=some_value;
包含条件查询语句
select * from table_name where some_column like '% some_value%';
'%'-- 通配符:
xx% -- 以xx开头%xx -- 以xx结尾%xx% -- 有xx
3. 删除语句:
delete from table_name where some_column=some_value;
4. 更新语句:
update table_name
set column1=value1,column2=value2,...
where some_column=some_value;
希望我的回答能够帮助到您!
聚合函数max() count() sum() min()开窗函数row_number(),rank()时间函数convert(),adatediff(week,[dateadd],getdate())
嵌套查询 select* from(select * from tablename1)as tablename2
SQL语句中----删除表数据drop、truncate和delete的用法
一、SQL中的语法
1、drop table 表名称 eg: drop table dbo.Sys_Test 2、truncate table 表名称 eg: truncate table dbo.Sys_Test 3、delete from 表名称 where 列名称 = 值 eg: delete from dbo.Sys_Test where test='test'
二、drop,truncate,delete区别
1、drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。
drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。
2、truncate (清空表中的数据):删除内容、释放空间但不删除定义(保留表的数据结构)。与drop不同的是,只是清空表数据而已。
注意:truncate 不能删除行数据,要删就要把表清空。
3、delete (删除表中的数据):delete 语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存
以便进行进行回滚操作。
truncate与不带where的delete :只删除数据,而不删除表的结构(定义)
4、truncate table 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用delete。
如果要删除表定义及其数据,请使用 drop table 语句。 5、对于由foreign key约束引用的表,不能使用truncate table ,而应使用不带where子句的delete语句。由于truncate table 记录在日志中,所以它不能激活触发器。
6、执行速度,一般来说: drop> truncate > delete。
7、delete语句是数据库操作语言(dml),这个操作会放到 rollback segement 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。
truncate、drop 是数据库定义语言(ddl),操作立即生效,原数据不放到 rollback segment 中,不能回滚,操作不触发 trigger。
sql语言诞生有一段时间了,里面有一些自带的很方便的函数,对于操作数据库来说是非常方便的,下面就介绍几种统计。
1、统计记录数 count函数,可以统计出这条sql会查询出多少条记录很多人用count(*),但建议用count(1)。
2、求合函数 sum,select SUM(num) from tmp_p,对表中 num列进行求合。
3、求平均值,select AVG(num) from tmp_p,对表中 sum列进行求平均值。
4、取出最大值,select MAX(num) from tmp_P,取出num列中最大的一个。
5、取出最小值,select MIN(num) from tmp_P,取出,num列中最小的一个。
6、将数值型数据转换成字符型,select CONVERT(varchar(10),num) from tmp_p,该函数属于sql server的函数,其它数据库可参考相关资料。
同构SQL语句:
指的是两个SQL语句可编译的部分是相同的,只是参数不一样而已
异构SQL语句:
指的是两个SQL语句整个的格式都是不同的。
在JDBC中,PreparedStatement执行同构SQL语句的效率是比较高的,因为PreparedStatement对象一旦绑定了SQL语句,就只能执行这一条SQL语句。
SQL中的CASE语句可以在查询中根据特定条件为每个行设置不同的值,类似于编程语言中的“if-then-else”语句。它的基本语法如下:
SELECT column1, column2,
CASE
WHEN condition1 THEN value1
WHEN condition2 THEN value2
ELSE value3
END
FROM table_name;
其中,column1和column2是查询中需要显示的列的名称,而CASE语句则用于根据特定条件生成额外列:
- 当condition1满足时,列值为value1;
- 当condition2满足时,列值为value2;
- 否则列值为value3。
通过使用多个WHEN关键字,可以添加多个条件逻辑。可以在SELECT语句中为不同的列使用不同的CASE语句,以使查询更加灵活。
sql脚本是有sql语言构成。 sql语句和sql脚本语法一样,一般sql语句都是用来完成一个简单的功能。 其实单个sql语句亦是sql脚本。
用记事本编辑器建立一个文本文件,把要执行的语句先写在文本文件里,然后通过粘贴在PL/SQL中运行,并把文本文件保存下来,过后随时随地就能查看当时运行过的语句。
在Microsoft SQL Server 2008 文件夹下运行 SQL Server Management Studio直接登陆系统数据库在菜单 “文件” 下面会有 “新建查询” 按钮点击后,可以开始输入SQL语句