mssql

推荐列表 站点导航

当前位置:首页 > 数据库 > mssql >

Sql学习第一天——SQL 练习题(建表/sql语句)

来源:网络整理  作者:网络  发布时间:2020-12-12 13:56
来自Madrid且订单数少于3的消费者,针对这个要求作出以下:建表做题分析以及sql语句的写法,感兴趣的朋友可以参考下...
insert into dbo.Orders values(4,'KRLOS');
group by customerid
--推翻了上面的答案,又想到了用表的连接,而用内连接出现的情况会和上面的一样,所以我选择了左连接,如下:
having count(customerid) < 3
group by C.customerid
GO
insert into dbo.Orders values(2,'FRNDO');
select C.customerid as 消费者,count(O.customerid) as 订单数



insert into dbo.Orders values(3,'KRLOS');

复制代码 代码如下:


customerid char(5) not null primary key ,

复制代码 代码如下:

insert into dbo.Orders values(1,'FRNDO');
select * from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid

--查询发现是正确的。
having count(C.customerid) < 3
create table dbo.Orders


where customerid in (
city varchar(10) not null

复制代码 代码如下:



insert into dbo.Customers values('KRLOS','Madrid');


GO
(
)

drop table dbo.Customers

题目:来自Madrid且订单数少于3的消费者


复制代码 代码如下:

select customerid as 消费者,count(customerid) as 订单数
GO
结果如图所示:

--第一次想到的答案,突然发现少了一个来自Madrid的FISSA订单,FISSA订单数量为0,所以在Orders表中没有出现,所以上面的写法会少一个.

select * from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid

结果如图所示:

use SY
--分析查看不带条件的左连接
where C.city= 'Madrid'
insert into dbo.Orders values(6,'MRPHS');
if object_Id('dbo.Orders') is not null
);
group by C.customerid

复制代码 代码如下:

from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid
order by numorders

orderid int not null primary key ,
select C.customerid , count(O.orderid) as numorders

Sql学习第一天——SQL 练习题(建表/sql语句)

insert into dbo.Customers values('FRNDO','Madrid');

--书中给的只是多了一个order by 进行定义了排序方式(以numorders这一列的升序进行排序)

--书中给的标准答案是:


select customerid
from dbo.Customers

create table dbo.Customers
结果如图所示:

from dbo.Orders


insert into dbo.Orders values(7,null);
结果如图所示:

drop table dbo.Orders
set nocount on --当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数
from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid
where C.city= 'Madrid'

建表:

insert into dbo.Orders values(5,'KRLOS');

复制代码 代码如下:

做题分析:

insert into dbo.Customers values('MRPHS','Zion');
------------------------------------------------------------------------------------------------------------------------------

insert into dbo.Customers values('FISSA','Madrid');
if object_Id('dbo.Customers') is not null
where city = 'Madrid')
(
customerid char(5) null references customers(customerid)
having count(O.orderid) < 3

相关热词: SQL语句

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://www.juheyunku.com/sql/mssql/2945.shtml

最新文章
sql server 关于设置null的一 sql server 关于设置null的一

时间:2020-12-28

详解SQL游标的用法 详解SQL游标的用法

时间:2020-12-27

vs code连接sql server数据库步 vs code连接sql server数据库步

时间:2020-12-27

图书管理系统的sqlserver数 图书管理系统的sqlserver数

时间:2020-12-25

详解SQL 通配符 详解SQL 通配符

时间:2020-12-25

sql四大排名函数之ROW_NUM sql四大排名函数之ROW_NUM

时间:2020-12-25

SQLServer数据库处于恢复挂 SQLServer数据库处于恢复挂

时间:2020-12-24

Win10 64位安装个人版SQL20 Win10 64位安装个人版SQL20

时间:2020-12-24

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Sql学习第一天——SQL 练习题(建表/sql语句)

2020-12-12 编辑:网络

insert into dbo.Orders values(4,'KRLOS');
group by customerid
--推翻了上面的答案,又想到了用表的连接,而用内连接出现的情况会和上面的一样,所以我选择了左连接,如下:
having count(customerid) < 3
group by C.customerid
GO
insert into dbo.Orders values(2,'FRNDO');
select C.customerid as 消费者,count(O.customerid) as 订单数



insert into dbo.Orders values(3,'KRLOS');

复制代码 代码如下:


customerid char(5) not null primary key ,

复制代码 代码如下:

insert into dbo.Orders values(1,'FRNDO');
select * from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid

--查询发现是正确的。
having count(C.customerid) < 3
create table dbo.Orders


where customerid in (
city varchar(10) not null

复制代码 代码如下:



insert into dbo.Customers values('KRLOS','Madrid');


GO
(
)

drop table dbo.Customers

题目:来自Madrid且订单数少于3的消费者


复制代码 代码如下:

select customerid as 消费者,count(customerid) as 订单数
GO
结果如图所示:

--第一次想到的答案,突然发现少了一个来自Madrid的FISSA订单,FISSA订单数量为0,所以在Orders表中没有出现,所以上面的写法会少一个.

select * from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid

结果如图所示:

use SY
--分析查看不带条件的左连接
where C.city= 'Madrid'
insert into dbo.Orders values(6,'MRPHS');
if object_Id('dbo.Orders') is not null
);
group by C.customerid

复制代码 代码如下:

from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid
order by numorders

orderid int not null primary key ,
select C.customerid , count(O.orderid) as numorders

Sql学习第一天——SQL 练习题(建表/sql语句)

insert into dbo.Customers values('FRNDO','Madrid');

--书中给的只是多了一个order by 进行定义了排序方式(以numorders这一列的升序进行排序)

--书中给的标准答案是:


select customerid
from dbo.Customers

create table dbo.Customers
结果如图所示:

from dbo.Orders


insert into dbo.Orders values(7,null);
结果如图所示:

drop table dbo.Orders
set nocount on --当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数
from dbo.Customers as C left join dbo.Orders as O on C.customerid = O.customerid
where C.city= 'Madrid'

建表:

insert into dbo.Orders values(5,'KRLOS');

复制代码 代码如下:

做题分析:

insert into dbo.Customers values('MRPHS','Zion');
------------------------------------------------------------------------------------------------------------------------------

insert into dbo.Customers values('FISSA','Madrid');
if object_Id('dbo.Customers') is not null
where city = 'Madrid')
(
customerid char(5) null references customers(customerid)
having count(O.orderid) < 3

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://www.juheyunku.com/sql/mssql/2945.shtml

相关文章

风云图片

推荐阅读

返回mssql频道首页