mysql - 泛化中的 SQL 查询
问题描述
关系模式:
Table comics(Generalization):
comic_name: varchar(Primary Key)
Created: boolean(Default = false)
Group_name: varchar(55), (Not Null)
Type: varchar(55), (Not Null)
Table Unreleased_comics(Specialization):
comic_Name: Foreign Key(comics, comic_name)
Table Released_comics(Specialization):
comic_Name: Foreign Key(comics, comic_name)
Release_Date: date (Not Null)
ER 中的关系:Comics isA Unreleased_Comics 和 Released_Comics
列出 2001 年之前发布的所有漫画的 SQL 查询应该是什么?(MySQL)
解决方案
选择正确的日期是一个简单INNER JOIN
的更复杂的部分,但是你只想要年份,仍然很简单
SELECT
c.comic_name, c.Created, c.Group_name, c.Type, r.Release_Date
FROM
comics crossINNER
JOIN
Released_comics r ON c.comic_name = r.comic_name
WHERE
YEAR(r.Release_Date) < 2001
推荐阅读
- python - 如何简化for循环
- database - Elasticsearch query relational data
- c# - 如何在 .NET Core 中卸载程序集/使其可收藏?
- apache-spark - AWS DMS SQL Server to s3 parquet - change-data-type transformation rule and 'Parquet type not supported: INT32 (UINT_8)'
- python - Pyinstaller'未能执行'脚本
- python - 绘制只有一条线颜色的多线图
- angular - 使用 TypeScript 添加加载图标时出现问题
- python - 'NoneType' 对象不是 python 进度条库的迭代器
- android - 来自 jetified-aws-android-sdk 和 jetified-aws-java-sdk 的重复类
- huawei-mobile-services - 集成HMS Core Safety Detect的SysIntegrity API时报错