首页 > 其他分享 >5.23

5.23

时间:2024-06-19 18:47:52浏览次数:17  
标签:订单 乘客 身份证号 航班号 航班 5.23 WHERE

今日学习内容:

假设某大型航空公司数据库,其关系模式(下划线代表主码) 有:

航班表(航班号,起点, 终点, 机型,价格, 折扣)

乘客表(身份证号,姓名,性别,年龄, 会员等级)

订单表(航班号,身份证号,日期,座位号, 票价)

(说明: 订单表中的航班号是外码,引用航班表中航班号; 订单表中的身份证号是 外码, 引用乘客表中的身份证号。)

完成如下题目(每个题目限用一个 SQL 语句实现): 

1. 订单表的建表语句
sql
CREATE TABLE 订单表 (
航班号 VARCHAR(10) NOT NULL,
身份证号 CHAR(18) NOT NULL,
日期 DATE NOT NULL,
座位号 INT NOT NULL,
票价 DECIMAL(10, 2),
PRIMARY KEY (航班号, 身份证号, 日期, 座位号),
FOREIGN KEY (航班号) REFERENCES 航班表(航班号),
FOREIGN KEY (身份证号) REFERENCES 乘客表(身份证号)
);
2. 新增航班记录
sql
INSERT INTO 航班表 (航班号, 起点, 终点, 机型, 价格, 折扣)
VALUES ('CA1008', '石家庄', '桂林', '中型机', 1260, 0.8);
3. 降低737机型航班价格
sql
UPDATE 航班表
SET 价格 = 价格 * 0.95
WHERE 机型 = '737';
4. 删除年龄高于80岁的乘客
sql
DELETE FROM 乘客表
WHERE 年龄 > 80;
5. 查询航班号第3位为1的航班信息
sql
SELECT 航班号, 起点, 终点, 机型
FROM 航班表
WHERE 航班号 LIKE '__1%'; -- 注意这里使用的是'__1%'而不是'1___'
6. 查询2022年1月白金会员的出行信息
sql
SELECT p.身份证号, p.姓名, f.起点, f.终点
FROM 乘客表 p
JOIN 订单表 o ON p.身份证号 = o.身份证号
JOIN 航班表 f ON o.航班号 = f.航班号
WHERE p.会员等级 = '白金' AND o.日期 BETWEEN '2022-01-01' AND '2022-01-31'
ORDER BY o.日期 ASC;
7. 按会员等级统计乘客人数
sql
SELECT 会员等级, COUNT(*) AS 人数
FROM 乘客表
GROUP BY 会员等级
ORDER BY 人数 DESC;
8. 创建视图view1
sql
CREATE VIEW view1 AS
SELECT f.航班号, o.身份证号, p.姓名, f.终点
FROM 航班表 f
JOIN 订单表 o ON f.航班号 = o.航班号
JOIN 乘客表 p ON o.身份证号 = p.身份证号
WHERE f.起点 = '北京' AND o.日期 = '2022-05-01';
9. 创建存储过程proc_c
sql
DELIMITER //
CREATE PROCEDURE proc_c(IN id CHAR(18))
BEGIN
SELECT f.航班号, o.日期, f.起点, f.终点
FROM 订单表 o
JOIN 航班表 f ON o.航班号 = f.航班号
WHERE o.身份证号 = id;
END //
DELIMITER ;
10. 创建触发器trig_p
sql
CREATE TRIGGER trig_p
AFTER DELETE ON 航班表
FOR EACH ROW
BEGIN
DELETE FROM 订单表 WHERE 航班号 = OLD.航班号;
END;

 

标签:订单,乘客,身份证号,航班号,航班,5.23,WHERE
From: https://www.cnblogs.com/szm123/p/18257039

相关文章

  • 5.23博客
    python和工程数学学习内容:下午没课所以可以看一下spring-boot自动配置原理安卓:packagecom.example.app_02.entity;publicclassUser{  privateStringusername;  privateStringpassword;  publicUser(){  }  publicUser(Stringusernam......
  • 5.23
    今日总结学习时间1.5h一个简易查询packageMain;importBean.SubwayBean;importDao.Sub;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importja......
  • 5.23
    import'package:flutter/material.dart';import'../Do/UserDao.dart';classRegisterPageextendsStatelessWidget{RegisterPage({requiredKeykey}):super(key:key);@overrideWidgetbuild(BuildContextcontext){//创建控制器TextE......
  • 2024.05.23
    河北省科技政策查询系统需求一、项目背景说明:近期,河北省省长视察河北省科技厅,需要开发一个科技政策查询界面,展示在河北省科技厅办公大厅触摸大屏上,实现多条件查询和按照政策分类树分类浏览。二、项目功能说明:科技政策查询主界面样式如下图所示:主界面主要分成五部分:1、顶部......
  • 5.23
    与小组成员改善完成如何完善每日心情的记录并且统计出来,根据不同的统计内容进行分析代码行量:166行学习所花时间:1h  packagecom.example.memosystem.activity;importandroid.os.AsyncTask;importandroid.os.Bundle;importandroid.widget.ArrayAdapter;importandroid.wi......
  • 5.23
    北京地铁作业2<template><viewclass="container"><viewclass="example"><uni-formsref="form":model="form"labelWidth="80px"><uni-forms-itemlabel="起始站"......
  • 2024.5.23(周四)
    function[s,phis,k,G,E]=golds(phi,a,b,delta,epsilon)%输入:phi是目标函数,a,b是搜索区间的两个端点delta,epsilon分别是自变量和函数值的容许误差9%输出:s,phis分别是近似极小点和极小值,G是nx4矩阵。其第k行分别是a,p,q,b的第k次迭代值[ak,pk,qk,bk],E=[ds,dphi],分别是s和phis的误......
  • 5.23
    importandroid.content.ContentValues;importandroid.content.Context;importandroid.database.sqlite.SQLiteDatabase;importandroid.database.sqlite.SQLiteOpenHelper;importandroidx.annotation.Nullable;publicclassMySQLiteHelperextendsSQLiteOpenHelper{......
  • KubeSphere 社区双周报|2024.05.09-05.23
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2024.05.09-05.23。贡献者名单新晋KubeSpherecontribu......
  • 5.23每日总结
    计网学习要传输一个8192字节的数据字段,必须通过IP分片来分割数据,因为以太网的最大传输单元(MTU)为1500字节。这意味着一个IP数据报的总长度(包括IP头部)不能超过1500字节。我们首先假设IP头部长度为20字节(不含选项部分的标准IPv4头部长度)。这意味着每个IP数据报可以携带的数据部分最......