create table es_user(
id number primary key description ,
username varchar2(20) not null,
password varchar2(20) not null ,
realname varchar2(20),
tel varchar2(20),
address varchar2(100),
zip varchar(6),
email varchar2(50),
usertype number(5,0) check (usertype in (0,1,2))
)
create table es_sort(
id number primary key,
sortname varchar2(40)
)
create table es_product(
id number primary key,
sort_id number references es_sort not null,
name varchar2(500) not null,
price number not null,
description varchar2(2000) not null,
contents varchar2(2000),
saledate date ,
stockcount number
)
create table es_order(
id number primary key,
user_id number references es_user not null,
realname varchar2(100) not null,
address varchar(100),
zip varchar2(6),
tel varchar2(50),
email varchar2(20),
createtime date not null,
totalamount number(10,2),
status number not null check (status in (1,2,3,4))
)
update es_user set password = '111111' ;
select * from es_user;
update es_product set name ='name1', price = 0 where id = 1; /*修改某一个商品的名字和价格 where 一般只通过主键修改*/
select * from es_product;
update es_product set price = 100 ;--设置所有的价格都为100
select * from es_product;
update es_user set usertype = 2 where usertype = 1;
insert into es_user values(2,'李刚','111','xukebao','63678657','dizhi','325401','735980892@qq.com',1);
insert into es_user values(3,'李妹子','111','xukebao','63678657','dizhi','325401','735980892@qq.com',2);
insert into es_user values(4,'哈哈','111','xukebao','63678657','dizhi','325401',null,2);
delete es_user where id = 3; /*删除es_user 上的某一行数据*/
select * from es_user where usertype = 2 and(username = 'kenybao' or username = 'kenybbb');
/*查询为空的时候 是用is null 的 */
select * from es_user where email is null;
/*所有姓李的会员*/
select *from es_user where username like '李%';
/*所有两个名字的姓李的会员*/
select * from es_user where username like '李_';
/*模糊查询 in两个中或选择*/
select * from es_user where username in('李刚','哈哈');
select * from es_user where username ='李刚'or username = '哈哈';
select u.username as "用户名" from es_user u where u.id = 2;/*起别名 为列取别名 as “别名字”*/
/*?????第二个名字为刚的用户信息????*/
select * from es_user where username like '_刚';
/*查询 用户id 为1 - 2的用户信息*/
select * from es_user where id between 1 and 2 ;
/* 取别名 表的别名在后面取的 可以省略as*/
select username as "用户账户名称" from es_user u ;
--设置产品分类编号和名字
insert into es_sort values(1001,'product1');
insert into es_sort values(1002,'product2');
insert into es_sort values(1003,'product3');
insert into es_sort values(1004,'product4');
--插入产品信息
--插入第一种方法
insert into es_product values (1,1001,'dasd',10.2,'hahaha',null,sysdate,10000);
insert into es_product values (2,1002,'dasd',20.11,'hahaha',null,sysdate,10000);
insert into es_product values (3,1003,'dasd',90.77,'hahaha',null,sysdate,10000);
insert into es_product values (4,1004,'dasd',70.55,'hahaha',null,sysdate,10000);
insert into es_product values (5,1001,'dasd',15.44,'hahaha',null,sysdate,10000);
insert into es_product values (6,1002,'dasd',60.33,'hahaha',null,sysdate,10000);
insert into es_product values (7,1003,'dasd',80,'hahaha',null,sysdate,10000);
--也可以这样插
insert into es_product (id , sort_id ,name,price ,description,saledate,stockcount)
values(8,1004,'dasd',70,'hahaha',sysdate,10000);
select * from es_sort;
select id ,name,price,to_char(saledate,'yyyy-dd-mm') from es_product; /*导出 规定输出date 用to_char方法*/
--可以这样排序asc表示升序排序,desc表示表示降序排序
--按产品价格降序排序
select * from es_product u order by u.price desc ;
select * from es_product u order by saledate desc ;
select price from es_product ;
--查看商品的价格分布 同样的价格需要被过滤 同时按价格升序排序
select distinct price from es_product order by price desc
--查询所有商品的类别 按 类别降序排列
select distinct sort_id from es_product order by sort_id desc;
--查询 价格在20-60 之间的所有产品 价格降序排列
select * from es_product u where u.price between 20 and 70 order by price desc;
--删除id为1 的商品
delete from es_product u where u.id = 1;
--
rollback --不加也删了????
delete from es_user ;
commit --不加也删了????
-- 在价格price 后面加上‘元’ 并降序排序 caoncat(参数1 ,参数2 )将参数1 和参数2 连接起来
select id "ID" ,name "名字",price||'元' "价格" from es_product order by price desc;
--连接两个属性的信息 并在一列中显示 方法同上
select concat(name , '的id是'||id) "姓名 和id " ,price "价格"from es_product;
--检索商品表 发现商品描述不为空的 用"暂无描述“代替
select id "ID" ,name "名字",price||'元' "价格",nvl(u.contents ,'暂无描述') "描述" from es_product u
--trunc(value,n)截取只有一个参数的时候 那么n将使用默认值0,n可以是整数也可以是负整数,
--正整数时表示截取小数点后面的位数,负整数时表示截取小数点前的位数。
select price from es_product;
select trunc(price ) from es_product;
select trunc(price ,1) from es_product;
select trunc(price ,-1) from es_product;
--round 四舍五入 其他和trunc用法一样
select price "原来的"from es_product;
select round(price ) "整数部分取整四舍五入" from es_product;
select round(price ,1) "小数点保留一位" from es_product;
select round(price ,-1) "小数点左边保留" from es_product;
--extract (year from sysdate)日期函数 取出 日期中的部分数值
select extract(year from saledate) "生产年份",extract (month from saledate) "生产月份" ,extract(day from saledate) "生产日" from es_product ;
insert into es_product values(5,1002,'dasd',80,'hahaha',null,sysdate,10000);
--用extract (year from sysdate)日期函数 打印列入 2013--8--1 的日期格式
--法1:用字符连接符 || 或者用
select extract(year from saledate)||'--'|| extract(month from saledate)||'--' ||extract(day from saledate) "日期" from es_product where id = 5;
--法2: to_char函数: 将date类型的字段转换为 固定格式的字符串输出
select to_char(saledate,'yyyy--mm--dd') "to_char日期" from es_product;
--to_date 方法 将固定字符串转为date 类型的数据 一般在日期字符串比较 或者录入日期类型数据时用
-- 1. 录入日期( 修改日期)
update es_product set saledate = to_date('2013--09--01','yyyy--mm--dd') where sort_id = 1002;
--2 查询规定字符串所表示的日期中的数据
select * from es_product where saledate between to_date('2013-08-1','yyyy-mm--dd') and to_date('2013-08-2','yyyy-mm--dd');
-- group by 聚合函数一般用于计算 什么平均工资啊之类的 但是必须分类 如每个员工 都属于一个部分
-- 那么 在这里我们计算每个部门的平均薪资 这时候我们就需要用 group by 来实现
--那么在这里 我们这里有四个 sort_id 也就是四个商品类别 计算每个类别的平均价格
--group by 类别 就是你要分类的类别 sort_id 商品类别 或者是 上面所说的 部门
select sort_id "商品类别" , avg(price) "平均价格" from es_product group by sort_id;
select * from es_user;
select * from es_sort;
delete es_sort;
delete es_product;
select * from es_product;
desc es_product
select * from es_order;
sql server 把时间加一天
转载文章标签 sql server 把时间加一天 oracle sql 数据 字符串 文章分类 SQL Server 数据库
-
java条件判断题:判断这一天是当年的第几天
从键盘分别输入年、月、日,判断这一天是当年的第几天
System switch语句 条件判断 -
基于tensorflowopencv蔬菜识别系统
图片中番茄个数的检测及标记 实验背景 随着我国农业方面不断向规模化、机械化方向发展,番茄的产量也大幅度增加。目前国内番茄采摘、筛选作业基本采用人工进行,劳动强度大、工作效率低。基于此,应用图像识别技术,研究设计果实采摘过程自动检测与识别技术成为目前研究人员的方向。 实验目的 熟悉掌握关于图像处理方面的相关知识,并将其整合,同时学习掌握Matlab的相关知识,实现对图像的处理。
matlab 图像二值化 matlab 图像转换保存 matlab 图像配准 matlab 增加图像对比度 matlab图像二值化