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-- ...
随机推荐
- 15 Practical Grep Command Examples In Linux / UNIX
You should get a grip on the Linux grep command. This is part of the on-going 15 Examples series, wh ...
- Spirng+In+Action(Craig Walls Ryan Breidenbach)
目录 1.开始Spring之旅(简介) 2.装配Bean(IoC) 3.创建切面(AOP) ... 第一章:开始Spring之旅 1.1 为什么使用Spring:简化了企业级系统开发. 1.1.1 j ...
- Windows上python + selenium + Firefox浏览器的环境配置
1.python安装 我的电脑是32位的,安装了Python 3.5.4版本其它安装版本 2.python环境变量配置 将”C:\Program Files\Python35",”C:\Pr ...
- java之Scanner
参考http://how2j.cn/k/operator/operator-scanner/658.html#nowhere 需要用到从控制台输入数据,所以需要用到Scanner类 使用Scanner ...
- 12. CTF综合靶机渗透(五)
运行环境 Virtualbox (二选一) Vnware Workstation player 通关提示 fristi 设置 首先,我们在开始之前,我们按照作者的要求设置虚拟机的MAC地址 08:00 ...
- [CentOS7] vncviewer与windows之间的复制粘贴
转载:https://my.oschina.net/seava/blog/226966 用VNC连接到Linux之后,最纠结的问题就是无法复制粘贴.其实很简单,在Linux里面,打开一个终端,然后输入 ...
- return die exit 常用
die()停止程序运行,输出内容exit是停止程序运行,不输出内容return是返回值die是遇到错误才停止exit是直接停止,并且不运行后续代码,exit()可以显示内容.return就是纯粹的返回 ...
- 2017乌鲁木齐区域赛K(容斥原理【求指定区间内与n互素的数的个数】)
#include<bits/stdc++.h>using namespace std;const long long mod = 998244353;typedef const long ...
- 洛谷P1083 借教室
P1083 借教室 题目描述 在大学期间,经常需要租借教室.大到院系举办活动,小到学习小组自习讨论,都需要向学校申请借教室.教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样. 面对海量租借 ...
- P2939 [USACO09FEB]改造路Revamping Trails(分层图最短路)
传送门 完了我好像连分层图最短路都不会了……果然还是太菜了…… 具体来说就是记录一个步数表示免费了几条边,在dijkstra的时候以步数为第一关键字,距离为第二关键字.枚举边的时候分别枚举免不免费下一 ...