SQL语句创建数据库以及一些查询练习
--创建 MyCompany数据库 use master execute sp_configure 'show advanced options',1 --开启权限
reconfigure
execute sp_configure 'xp_cmdshell',1
reconfigure execute xp_cmdshell 'mkdir e:\作业数据库'--自动创建文件夹
execute sp_configure 'xp_cmdshell',0--关闭权限,先关
reconfigure
execute sp_configure 'show advanced options',0 后关,一句话,先开后关
reconfigure if exists(select * from sysdatabases where name='MyCompany')
drop database MyCompany
go
create database MyCompany
on primary
(
name='MyCompany_data',
size=3mb,
fileGrowth=10%,
Maxsize=100mb,
filename='e:\作业数据库\MyCompany_data.mdf'
)
log on
(name='MyCompany_log',
size=3mb,
fileGrowth=10%,
Maxsize=100mb,
filename='e:\作业数据库\MyCompany_log.ldf'
)
--部门表 department
-- dId
-- dName
use MyCompany
if exists(select * from sysobjects where name='department')
drop table department
go
create table department
(dId int not null primary key identity(1,1),
dName nvarchar(50) not null )
--员工表 employee
-- eId
-- eName
-- eSex
-- eAge
-- eSalary
-- eDepId
-- eInTime 入职时间 if exists(select * from sysobjects where name='employee')
drop table employee
go
create table employee
( eId int not null primary key identity(1,1),
eName nvarchar(50),
eSex char(2),
eAge int,
eSalary money,
eDepId int,
eInTime datetime )
添加外键FK_employee_department_eDepId
alter table employee
add constraint FK_employee_department_eDepId foreign key(eDepId) references department(dId) insert into department values ('教学部')
insert into department values ('业务部')
insert into department values ('学工部') insert into employee values ('李定','男',28,5000,1,'2014-8-8')
insert into employee values ('张月月','女',28,5000,2,'2013-8-8')
insert into employee values ('李定山','男',18,3000,3,'2014-8-1')
insert into employee values ('张三','男',18,1800,3,'2014-7-1')
insert into employee values ('张三1','女',18,1800,3,'2013-7-1') insert into employee values ('张三2','女',28,4800,2,'2011-7-1') --建库 建表 建约束 添加测试数据 更新 和删除
--1、查询所有员工
select * from employee --2、查询工资超过2000快钱的员工
select * from employee where eSalary>2000
--3、查询最新进来的5个员工 ---降序排序
select top 5 * from employee order by eInTime desc --4、查询员工的平均工资 select avg() from
select avg(eSalary) as 平均工资 from employee --5、查询总共有多少员工 count
select count(*) as 员工数 from employee --6、查询每个部门有多少员工 ---按部门分组
select eDepId,count(*) as from employee group by eDepId --7、查询每个部门的平均工资
select eDepId,avg(eSalary) from employee group by eDepId --8、查询每个部门男员工的平均工资
select eDepId,eSex,avg(eSalary) from employee where eSex='男' group by eDepId,eSex --9、查询平均工资超过2000的那些部门 having 对分组之后的数据再进行筛选 select eDepId,avg(eSalary) from employee group by eDepId having avg(eSalary)>200 --10、查询员工工资(姓名,工资)的同时,同一结果集显示平均工资和最高工资
--select ' '+姓名,工资 from 表
--union
--select cast(平均工资 as varchar()),最高工资 from 表
select eName,eSalary from employee
union all select '平均工资',avg(eSalary) from employee
union all
select '最高工资',max(eSalary) from employee
--这个方式也行
select eName,eSalary from employee
union all
select convert(varchar(20),avg(eSalary)) ,max(eSalary) from employee
--11、查询名字里包含'定,月'的这些员工,并对结果按照年龄排序 select * from employee where eName like'%三%' or eName like '%定%'order by eAge ----好吧没有做更新和删除 update 表名 set 字段=新赋值 where 字段=‘’
例如:把张三的名字改为逗碧
update employee set eName='逗碧' where eName='张三'
delete table 表名 ===等开除吧,后面加where 否则全删除 -
--删除数据时候 把自增长列的值还原成种子
truncate table 表名 -- 强迫症而已
SQL语句创建数据库以及一些查询练习的更多相关文章
- 2-05使用SQL语句创建数据库2
使用SQL语句创建多个数据文件和日志文件: USE master--指向当前使用的数据库 GO--批处理的标志 CREATE DATABASE E_Market--创建E_market数据库 ON P ...
- 2-06使用SQL语句创建数据库3
向现有数据库中添加文件组和数据文件几种方式以及步骤: 第一种:在视图下添加文件组和数据文件. 添加文件组的步骤: 右击你想要添加文件组的数据库点属性,然后点文件组就可以添加. 添加数据文件的步骤: 下 ...
- sql server2008中怎样用sql语句创建数据库和数据表
这是简单用代码实现创建数据库和数据表的sql语句,如下: --调用系统数据库-- use master go /***防止你要创建的数据库同名,先把它删除掉****/ if Exists(select ...
- SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束
创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...
- 使用SQL语句创建数据库2——创建多个数据库文件和多个日志文件
在matser数据库下新建查询,输入的命令如下: USE master GOCREATE DATABASE E_MarketON PRIMARY--主文件组( NAME ='E_Market_data ...
- 使用SQL语句创建数据库1——创建一个数据库文件和一个日志文件的数据库
目的:创建一个数据库文件和一个日志文件的数据库 在matser数据库下新建查询,输入的命令如下: USE master——指向当前使用的数据库.创建数据库实际上是向master数据库中增加一条数据库信 ...
- C# 读取文件中的sql语句 创建数据库以及表结构
大概思路是: 读取文件 根据文件中行内容为GO 作为分割 一条条放到list中 然后在程序中逐条执行sql语句; 值得一提的是 创建数据库的语句是不允许放到程序事务中执行的 所以目前我是分了两个文本 ...
- MySQL数据库执行sql语句创建数据库和表提示The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to have it working
MySQL创建数据库 只想sql文件创建表时候提示 The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to ha ...
- 2-04使用SQL语句创建数据库
下面是创建数据库的一些语法: USE master--指向当前使用的数据库 GO--批处理的标志 CREATE DATABASE E_Market--创建E_market数据库 ON PRMARY-- ...
随机推荐
- 共有11款Python 中文分词库开源软件
件过滤: 排序: 收录时间 | 浏览数 Python 中文分词库 Yaha "哑哈"中文分词,更快或更准确,由你来定义.通过简单定制,让分词模块更适用于你的需求. "Ya ...
- javascript之模拟块级作用域
在java.C++等语言中,变量i在会在for循环的语句块中定义,循环一旦结束,变量i就会被销毁.可是在javaScript中,从定义开始,就可以在函数内部随处访问.比如 function outpu ...
- 掌握HDFS的Java API接口访问
HDFS设计的主要目的是对海量数据进行存储,也就是说在其上能够存储很大量文件(可以存储TB级的文件).HDFS将这些文件分割之后,存储在不同的DataNode上, HDFS 提供了两种访问接口:She ...
- Java 散列表的实现
摘自http://www.cxybl.com/html/suanfa/201110125445.html 有改动 public class MyHashtable { //表中元素个数 private ...
- NIO和Reactor
本文参考Doug Lea的Scalable IO in Java. 网络服务 随着网络服务的越来越多,我们对网络服务的性能有了更高的要求,提供一个高性能,稳定的web服务是一件很麻烦的事情,所以有了n ...
- 测试merge效率
测试说明: MERGE是oracle提供的一种特殊的sql语法,非常适用于数据同步场景,即: (把A表数据插到B表,如果B表存在相同主键的记录则使用A表数据对B表进行更新) 数据同步的常规做法是先尝试 ...
- Redis源码分析-底层数据结构盘点
前段时间翻看了Redis的源代码(C语言版本,Git地址:https://github.com/antirez/redis), 过了一遍Redis数据结构,包括SDS.ADList.dict.ints ...
- 使用配置类而不使用XML文件(代替bean.xml)对spring进行配置
以下类是一个配置类,它的作用和bean.xml是一样的注解: @Configuration 作用: 用于指定当前类是一个spring配置类,当创建容器时会从该类上加载注解. 获取容器时需要使用Anno ...
- spring boot 使用 POI 读取Excel文件
内容简介 本文主要介绍使用POI进行Excel文件的相关操作,涉及读取文件,获取sheet表格,对单元格内容进行读写操作,以及合并单元格的操作. Excel文件目录 Excel模板文件存了resour ...
- bzoj 4974: [Lydsy八月月赛]字符串大师
4974: [Lydsy八月月赛]字符串大师 Time Limit: 1 Sec Memory Limit: 256 MBSubmit: 371 Solved: 190[Submit][Statu ...