sql常用语句

常用数据库sql语句练习

/*group by 分组查询,查询的字段和分组字段数量要一致,分组列唯一值作为一个组,多个字段组,允许a+b重复,但不允许单个分组,a/a*/

select bin_code,sum(total_qty) from wms_stock group by bin_code order by sum(total_qty) ASC


select * from wms_stock order by total_qty


alter table wms_account_result add field1 varchar
/*联合查询*/
select * from wms_container c join wms_stock s on c.container_code=s.trace_code where c.container_str2='01';

/*创建一个数据库*/
create database user2023;

/*创建一个数据库表*/
create table student1
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)


/*向已有的表增加字段ALTER TABLE Persons
ADD Birthday date*/
alter table student add Birthday  varchar(255);

/*向已有的表删除字段,ALTER TABLE Persons
ALTER COLUMN Birthday year*/
alter table student drop column work;

/*向数据表插入数据*/
insert into student (Id_P,LastName,FirstName,Address,City,birthday)  values (generate_series(11,20),'wang','qiyin','hagnzhou','ye',generate_series(11,20));

/*更改数据表参数*/
update student set city='beijing' where birthday='11';

/*删除数据库表的数据*/
DELETE FROM Person WHERE LastName = 'Wilson'

/*查询--子查询,使用NOT EXISTS或者exists*/
select city,id_p,birthday from student where exists (select * from student where birthday like '%1');

select stock_code,bin_code from wms_stock order by stock_code asc;
/*查询列中不重复的值*/
select distinct city from student;

/*查询多少条记录,通过limit*/
select * from student limit 2 where address in ('hangzhou');

/*between可以在两个数字或者文本之间*/
select * from student as s where s.id_p between 1 and 5;
create table fruit(
Id_P int,
Last varchar(255),
First varchar(255),
Address varchar(255),
City varchar(255)
);

insert into fruit (Id_P,last,first,Address,City) values (generate_series(1,10),'test01','test02','nanjing','shanghai');

/*联合查询*/
select * from student as s inner join fruit as f on s.id_p=f.id_p where s.id_p between 1 and 5;
select * from student as s left join fruit as f on s.id_p=f.id_p where s.id_p between 1 and 5;
select * from student as s join fruit as f on s.id_p=f.id_p where s.id_p between 1 and 5;
select * from student as s right join fruit as f on s.id_p=f.id_p where s.id_p between 1 and 5;
select * from student as s full join fruit as f on s.id_p=f.id_p where s.id_p between 1 and 5;


/*数据库表数据的复制,可以复制部分列的数据*/
select * into student1 from student;

/*当两个表的结构相同,可使用unio或者unio all查询两个表的参数*/
select * from student1 union all select * from student;

/*创建一个视图,create view 视图名称,接着可以直接查询视图名称,来按照视图展示*/
create view stu as select * from student where id_p in (1,2,3,4,5);
select * from stu;

/*function(列)*/
select avg(id_p),count(distinct id_p) from student;
SELECT mid(address,2,5) AS LastOrderPrice FROM student

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值