数据库的基础
2013-09-25 14:19
106 查看
表的建立,并插入数据
create table T_Product
(
P_Id int primary key identity,
p_Name varchar(32) not null
)
create table T_Order
(
O_Id int primary key identity,
P_Id int not null,
O_Numb int not null,
O_Date date not null
)
insert into T_Product(p_Name) values('螺丝'),('钉子'),('漏电保护器'),('有机玻璃')
insert into T_Order(P_Id,O_Numb,O_Date) values(2,1500,'2011-02-01'),(1,2000,'2011-02-02'),
(2,1600,'2011-03-01'),(3,3000,'2012-01-01'),(1,1300,'2012-02-01'),(3,4000,'2012-01-07'),
(2,2000,'2011-03-01'),(1,1030,'2011-02-02'),(4,2200,'2013-05-01')
数据的连接查询
select * from T_Order
select * from T_Product
--group by,having
select P_Id,SUM(O_Numb) from T_Order group by(P_Id) having(SUM(O_Numb))>5000
select P_Id,COUNT(*) from T_Order group by(P_Id) having COUNT(*)>2
select * from (select P_Id,COUNT(*) as countnumb from T_Order group by(P_Id) having COUNT(*)>2)t where t.countnumb>2
--连接查询,inner join内连接,outer join(right,left,full)外连接,cross join交叉连接
select * from T_Product p inner join T_Order o on p.p_Name='钉子' and o.P_Id=2
select * from T_Product p inner join T_Order o on p.p_Name='钉子' and o.P_Id=2 order by o.O_Numb desc
select p.P_Id,p_Name,O_Id from T_Product p inner join T_Order o on p.P_Id=o.P_Id
select p.P_Id,p_Name,O_Id from T_Product p left join T_Order o on p.P_Id=o.P_Id
select p.P_Id,p_Name,O_Id from T_Product p right join T_Order o on p.P_Id=o.P_Id
select T_Product.p_Name,O_Numb,O_Id from T_Product cross join T_Order
--order by 对字段的内容进行排序 order by +字段名
select p.p_Name,O_Numb,O_Id from T_Product p cross join T_Order o order by O_Numb ASC
select p.p_Name,O_Numb,O_Id from T_Product p cross join T_Order o order by p_Name asc
create table T_Product
(
P_Id int primary key identity,
p_Name varchar(32) not null
)
create table T_Order
(
O_Id int primary key identity,
P_Id int not null,
O_Numb int not null,
O_Date date not null
)
insert into T_Product(p_Name) values('螺丝'),('钉子'),('漏电保护器'),('有机玻璃')
insert into T_Order(P_Id,O_Numb,O_Date) values(2,1500,'2011-02-01'),(1,2000,'2011-02-02'),
(2,1600,'2011-03-01'),(3,3000,'2012-01-01'),(1,1300,'2012-02-01'),(3,4000,'2012-01-07'),
(2,2000,'2011-03-01'),(1,1030,'2011-02-02'),(4,2200,'2013-05-01')
数据的连接查询
select * from T_Order
select * from T_Product
--group by,having
select P_Id,SUM(O_Numb) from T_Order group by(P_Id) having(SUM(O_Numb))>5000
select P_Id,COUNT(*) from T_Order group by(P_Id) having COUNT(*)>2
select * from (select P_Id,COUNT(*) as countnumb from T_Order group by(P_Id) having COUNT(*)>2)t where t.countnumb>2
--连接查询,inner join内连接,outer join(right,left,full)外连接,cross join交叉连接
select * from T_Product p inner join T_Order o on p.p_Name='钉子' and o.P_Id=2
select * from T_Product p inner join T_Order o on p.p_Name='钉子' and o.P_Id=2 order by o.O_Numb desc
select p.P_Id,p_Name,O_Id from T_Product p inner join T_Order o on p.P_Id=o.P_Id
select p.P_Id,p_Name,O_Id from T_Product p left join T_Order o on p.P_Id=o.P_Id
select p.P_Id,p_Name,O_Id from T_Product p right join T_Order o on p.P_Id=o.P_Id
select T_Product.p_Name,O_Numb,O_Id from T_Product cross join T_Order
--order by 对字段的内容进行排序 order by +字段名
select p.p_Name,O_Numb,O_Id from T_Product p cross join T_Order o order by O_Numb ASC
select p.p_Name,O_Numb,O_Id from T_Product p cross join T_Order o order by p_Name asc
相关文章推荐
- Mysql基础知识:操作数据库
- MySQL:数据库基础和workbench介绍
- 【Java】Hibernate(四)对象/关系数据库映射基础
- mysql系列之一关系型数据库基础理论
- 数据库基础知识总结
- 数据库基础(数据库事务及存储过程的小练习)
- JAVA基础一大堆0810数据库小练习
- Java自学之路-Java基础教程-39:Java的Web工程访问数据库和网页显示数据
- “黑马程序员”视频学习笔记之数据库基础
- 【Java基础之数据库】代码库(五)
- Django基础学习四_数据库的增删改查
- 数据库基础知识
- mysql学习之路(一) 数据库基础
- 数据库基础
- 11-15SQLserver基础--数据库之范式理论
- Python基础-数据库-使用SQLite
- 数据库基础知识整理
- 数据库 基础学习2— 可视化操作数据库表
- 数据库基础
- PHP连接数据库基础知识及易错点