1)插入语句
insert into T_Person1(Id,Name,Age) values(1,'Vicky',20)
--插入一条据数,字段和值必须前后对应
insert into T_Preson1(Id,Name,Age) values(2,'Tom',19)
insert into T_Person1(Id,Name,Age) values(3,'Hanmeimei',21)
insert into T_Person1(Id,Name,Age) values(newid(),'Tom',19)
2)更新语句
--修改列,把所有的age字段改为30
update T_Person1 set age=30
update T_Person1 set Name=N'中文字符' where Age=20
--中文字符前面最好加上N,以防出现乱码
3)删除语句
--删除表中全部数据
delete from T_Person1
--根据条件删除数据
delete from T_Person1 where Name='Tom'
4)查询语句
--可以查询SQLServer版本
select @@VERSION as SQLServer版本
--简单的数据查询.HelloWorld级别
SELECT * FROM T_Employee;
--只查询需要的列.
SELECT FNumber FROM T_Employee;
--给列取别名.As关键字
SELECT FNumber AS 编号, FName AS 姓名 FROM T_Employee;
--使用 WHERE 查询符合条件的记录.
SELECT FName FROM T_Employee WHERE FSalary<5000;
--对表记录进行排序,默认排序规则是ASC
SELECT * FROM T_Employee ORDER BY FAge ASC,FSalary DESC;
--ORDER BY 子句要放在 WHERE 子句之后.
SELECT * FROM T_Employee WHERE FAge>23 ORDER BY FAge DESC,FSalary DESC;
--WHERE 中可以使用的逻辑运算符:or、and、not、<、>、=、>=、<=、!=、<>等.
--模糊匹配,首字母未知.
SELECT * FROM T_Employee WHERE FName LIKE '_arry';
--模糊匹配,前后多个字符未知.
SELECT * FROM T_Employee WHERE FName LIKE '%n%';
--NULL 表示"不知道",有 NULL 参与的运算结果一般都为 NULL.
--查询数据是否为 NULL,不能用 = 、!= 或 <>,要用IS关键字
SELECT * FROM T_Employee WHERE FName IS NULL;
SELECT * FROM T_Employee WHERE FName IS NOT NULL;
--查询在某个范围内的数据,IN 表示包含于,IN后面是一个集合
SELECT * FROM T_Employee WHERE FAge IN (23, 25, 28);
--下面两条查询语句等价。
SELECT * FROM T_Employee WHERE FAge>=23 AND FAge<=30;
SELECT * FROM T_Employee WHERE FAge BETWEEN 23 AND 30;
(5)练习
----创建一张Employee表,以下几个Demo中会用的这张表中的数据
----在SQL管理器中执行下面的SQL语句,在T_Employee表中进行练习
create table T_Employee(FNumber varchar(20),
FName varchar(20),
FAge int,
FSalary Numeric(10,2),
primary key (FNumber)
)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('DEV001','Tom',25,8300)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('DEV002','Jerry',28,2300.83)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('SALES001','Lucy',25,5000)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('SALES002','Lily',25,6200)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('SALES003','Vicky',25,1200)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('HR001','James',23,2200.88)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('HR002','Tom',25,5100.36)
insert into T_Employee(FNumber,FName,FAge,FSalary) values('IT001','Tom',28,3900)
insert into T_Employee(FNumber,FAge,FSalary) values('IT002',25,3800)
--开始对T_Employee表进行各种操作
--检索所有字段
select * from T_Employee
--只检索特定字段
select FName,FAge from T_Employee
--带过滤条件的检索
select * from T_Employeewhere FSalary<5000
--可更改显示列名的关键字as,as—起别名
select FName as 姓名,FAge as 年龄,FSalary as 薪水 from T_Employee