某宾馆其关系模式如下:
Room(房间编号,房间类型,价格)
Customer(顾客编号,顾客姓名,年龄,电话)
RC(房间号,顾客编号,入住日期,入住天数)

 1 create database Hotel DEFAULT CHARSET 'utf8';
2 use Hotel;
3 create table Room(
4 r_id varchar(3) primary key,
5 r_type varchar(10),
6 r_price int
7 );
8 create table Customer(
9 c_id varchar(6) ,
10 c_name varchar(10),
11 c_sex varchar(2),
12 c_phone varchar(7)
13 );
14 create table RC(
15 r_id varchar(3),
16 c_id varchar(6),
17 rcdate date,
18 rcday int
19 );

试用SQL语句实现下列操作
1. 向Customer表插入一条新记录:顾客编号为011319,姓名为张三,电话为9000186。

insert  into Customer(c_id,c_name,c_phone) values('011319','张三','9000186');

2. 查询没有使用过的房间的编号。

select r_id from Room where r_id not in(select r_id from RC);

3.查询入住天数大于2天的顾客姓名和电话。

select c_phone,c_name from Customer,RC where
Customer.c_id=RC.c_id and datediff(curdate(),rcdate)>2;

4.建立视图VW:2010年1月1日后入住的所有顾客的姓名,房间类别,入住天数。

create view rc1(c_name,r_type,rcday)
as
select c_name,r_type,(select datediff(curdate(),rcdate)as rcday )from
Room,Customer,RC where Room.r_id=RC.r_id and Customer.c_id=RC.c_id
and rcdate>'2010-01-01';

5.查询累计入住天数超过2天的顾客编号,累计入住天数。

select c_id ,sum(rcday) as sumdays from RC
where rcday=(select datediff(curdate(),rcdate)as rcday from RC)
having sum(rcday)>2;

  

Mysql语句练习的更多相关文章

  1. 如何根据执行计划,判断Mysql语句是否走索引

    如何根据执行计划,判断Mysql语句是否走索引

  2. 让dede运行php代码和mysql语句

    一.dede运行php代码 举例1: {dede:name runphp='yes'} $str = "hello ";@me = $str;@me .= "world& ...

  3. php代码优化,mysql语句优化,面试需要用到的

    首先说个问题,就是这些所谓的优化其实代码标准化的建议,其实真算不上什么正真意义上的优化,还有一点需要指出的为了一丁点的性能优化,甚至在代码上的在一次请求上性能提升万分之一的所谓就去大面积改变代码习惯, ...

  4. mysql语句:批量更新多条记录的不同值[转]

    mysql语句:批量更新多条记录的不同值 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: 帮助 1 UPDATE mytable SET myfield = 'value' WHERE ...

  5. Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值

    Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值 Thinkphp 的文档经常不够完整的表达MYSQL的各种组合,is not null在thinkp ...

  6. MySQL语句进行分组后的含有字段拼接方法

    MySQL语句: SELECT GROUP_CONCAT(DISTINCT transaction_no) FROM `lm_wh_trans` GROUP BY staff_code; 如果tran ...

  7. shell脚本循环执行mysql语句

    参考资料:Shell脚本中执行mysql语句 需求:数据库里有张数据表存储的是用户对电影的评价(user_id movie_id rating time),但是我现在要每部电影的总评分. 解决方法: ...

  8. 【PHP基础】常用mySQL语句以及WampServer2.2设置数据库默认编码

    一.WampServer2.2设置数据库默认编码(此部分转自http://www.cnsecer.com/5984.html) wamp下MySQL的默认编码是Latin1,不支持中文,要支持中文的话 ...

  9. mysql语句中把string类型字段转datetime类型

    mysql语句中把string类型字段转datetime类型   在mysql里面利用str_to_date()把字符串转换为日期   此处以表h_hotelcontext的Start_time和En ...

  10. php中mysql语句的基本写法

    php中mysql语句的基本写法 php作为一门后台语言必须要与mysql数据库打交道,做到将内容存储到数据库以及数据库数据读写的操作,那么下面就来说下最近学习的一些东西: 在具体将之前先说一下编码的 ...

随机推荐

  1. Go--生成excel表格,读取excel表格数据

    先下载第三方依赖包: go get -u github.com/xuri/excelize/v2 代码: package main import ( "fmt" "git ...

  2. 使用layui+jQuery实现点击数据修改,即点即改。

    使用layui+jQuery实现点击数据修改即可修改 首先要用到layui的官网手册 地址:https://www.layui.com/ 注意1.  此功能是在使用layui展示数据的基础上实现 3. ...

  3. Jenkins自动化部署(linux环境)---执行脚本

    1.安装node插件 2.node全局配置 3.填写jenkins构建时执行的shell脚本 完整命令 node -v npm install rm -rf ./dist/* npm run buil ...

  4. 深入Alertmanager 概念与配置介绍

    原文: https://www.cnblogs.com/gered/p/13496950.html 警报一直是整个监控系统中的重要组成部分,Prometheus监控系统中,采集与警报是分离的.警报规则 ...

  5. RxJava简要分析

    一:RxJava执行流程: RxJava简单使用 private final String tag = getClass().getSimpleName(); //数据源,被观察对象 Observab ...

  6. vue- cube-scroll踩坑记

    坑: 下拉刷新,上拉加载一直处于加载中  ---  原因:未结束此次下拉或上拉  ---解决:forceUpdate()结束上拉或下拉 无法正常滚动  --- 原因:数据更新了,但页面高度未变化 -- ...

  7. httpcanary高级版--不闪退!!!!

    地址 https://wwm.lanzouw.com/iOf7Hz11s4j 密码:45of

  8. 【FPGA学习】根据datasheet编写Verilog驱动(PCF8574 IO扩展板练习)

    在之间的博客中已经讲了如何阅读一本datasheet并编写Verilog驱动代码,而在这篇博客中就加以应用,为PCF8574 IO扩展板编写驱动并观察效果,至于为什么选择这个,一方面是因为这个芯片功能 ...

  9. ASPNET Core ActionFilterAttribute中断后续请求

    转载自:https://www.cnblogs.com/luconsole/p/4346669.html SPNET MVC如何正确的中断请求? 感觉是这样? 在aspnet开发过程中如果想要中断当前 ...

  10. conda出现Solving environment: failed错误

    conda在使用create新建环境和install安装时报错"Solving environment: failed" 报错截图  解决方案 1.在cmd中输入 %HOMEPAT ...