資料庫管理 Database Managent Ex.1-3 SQL指令練習

Slides:



Advertisements
Similar presentations
第二章 简单的 SQL 语句. 本章要点  创建一个简单的表  SQL 语句介绍  最简单的查询语句 select  带有限制条件的查询  查询结果的排序显示.
Advertisements

Data type P64 ‘’ 转义字符 P67 P68 EXE,选出某个教师的学生中最新的一 个,要姓名, ID (,LIMIT ) EXISTS,NOT EXISTS P409 Q,EXISTS 和 in 的区别( 1000 ,查询结果)
Java 技术与应用 数据库应用 ( 第 14 章 ) 西安交大 卫颜俊 2008 年 12 月 电子信箱: QQ: 网站 : /java.
Select 指令 基本結構 WHERE Like語法 Order by與group by Having 與 AS
資料庫管理 Database Management 建立銀行資料庫及查詢範例
第6章 数据库管理软件Access 年秋.
目 录 第 1 章 数据库技术基础 第 2 章 SQL Server基础 第 3 章 数据库管理 第 4 章 查询和视图
SQL的简单查询.
第5章 关系数据库标准语言SQL 主讲:张丽芳.
十一 ASP对数据库的访问.
Network Database Programming
第2讲 Transact-SQL语言.
数据库技术 实践.
Chap 11 SQL基本查詢指令.
第8章 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
第4章 关系数据库标准语言SQL 4.1 SQL语言概述 4.2 SQL数据查询功能 4.3 SQL数据操作功能 4.4 SQL数据定义功能.
第3章 SQL的基础知识 数据库管理及应用 3.1 SQL简介 3.2 SQL的数据模型 3.3 标识符 3.4 使用SQL语句管理数据库
第7章 数据库基础知识 SQL常用命令使用方法 (1) 数据记录筛选: sql="select * from 数据表
数据库概述 简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、SQL Server、MySQL等诸多优秀的数据库。在这一章中将讲解的内容包括。
文科计算机小公共课规划教材 Access 程序设计.
第一讲 数据查询优化.
计算机应用基础 上海大学计算中心.
第3章 数据查询与SQL命令.
資料庫管理 資管二 賴柏融.
Views ,Stored Procedures, User-defined Function, Triggers
SQL Structured Query Language 用以操縱資料庫的指令集 資料操作語言DML:操作資料錄
關聯式資料庫.
第六章 學習SQL語言.
9 SELECT敘述的進階查詢 9-1 SQL的多資料表查詢 9-2 合併查詢 9-3 集合運算查詢 9-4 子查詢
LINQ 建國科技大學 資管系 饒瑞佶.
課程名稱:資料庫系統 授課老師:李春雄 博士
課程名稱:資料庫系統 授課老師:李春雄 博士
2、掌握SQL中各种查询方法和数据更新方法 3、掌握SQL中视图的定义方法和用法 4、掌握SQL的授权机制
第八章 利用SELECT查詢資料.
資料庫安全 (Database Security)
彰化縣政府補助辦理網頁設計資料庫應用班 ASP與資料庫介紹 建國技術學院資管系 饒瑞佶.
SQL Server 2000 数据库入门.
第3章 MySQL教學範本 主從式資料庫系統 - CH3.
实验 2:MS Access QBE Query使用
教育部資通訊軟體創新人才推升推廣計畫 「智慧終端與人機互動創作專題競賽」報告 救救菜英文
SQL Stored Procedure SQL 預存程序.
第九章 進階的查詢技巧.
SQL SERVER 一些经典语句 1.
MySQL 結構化查詢語言 MySQL.
第十七章 資料庫SQL 17-1 SELECT 17-2 INSERT 17-3 UPDATE 17-4 DELETE.
資料庫管理(Access 2003) 第五章 利用查詢來 統計與分析資料 許欽嘉 老師.
第十二章 SQL語言簡介 講授大綱: 新增資料庫 新增資料表 新增資料 修改資料 刪除資料 查詢資料 透視ASP.NET-第12章
資料庫程式設計 VB資料庫設計簡介 週次:6 建國科技大學 資管系 饒瑞佶.
SQL Injection (資料隱碼) 學生:a 吳倩瑜 指導教授:梁明章.
第20章 MySQL数据库.
数据库技术.
第18章 SQL結構化查詢語言 18-1 SQL語言的基礎 18-2 SQL的查詢指令 18-3 SQL子查詢與合併查詢.
資料庫系統 李翊豪 2017/12/21 Reference
3.2 Mysql 命令行 1 查看数据库 SHOW DATABASES; 2 创建一个数据库test1 CREATE DATABASE test1; 3 选择你所创建的数据库 USE test1; (按回车键出现Database changed 时说明操作成功!) 4 查看现在的数据库中存在什么表.
資料庫管理 Database Managent Ex.1-4 SQL指令練習
3. SQL语言的应用 3.1 SQL历史和优点 3.2 数据查询 3.3 数据操纵.
学习目标 1、什么是表连接 2、表连接类型 3、表连接区别.
数据透视表与SQL典型应用 ——数据分析人士必杀技
查询与视图 蔡海洋.
第14章 SQL数据查询与操纵 内容提要 本章知识点
SQL查询语句 蔡海洋.
資料庫管理 Database Managent Ex.1-2 課本範例練習
8 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
Database Management Exercise 1
SQL語法教學 2015/10/15 John.
LINQ 語法簡介 設計人:顏嘉君.
11 檢視表的建立 11-1 檢視表的基礎 11-2 建立檢視表 11-3 修改與刪除檢視表 11-4 編輯檢視表的內容.
資料庫系統_答案 Database System Week3
第4章 数据查询.
第 9 章 查詢資料- 善用 SELECT 敘述.
Presentation transcript:

資料庫管理 Database Managent Ex.1-3 SQL指令練習 系級:物理四 學號:49814201 姓名:吳嘉峰 授課老師:楊維邦 教授 日期:2013/04/01

目錄 建立所需表格 線上購物系統 SQL指令練習 情境模擬 Aggregate Function 心得感想 表格設計心得 情境聯想心得

建立所需表格 線上購物系統

建立線上購物系統用表格 指令格式: CREATE TABLE 表格名稱 ( 欄位名稱1 資料型別(資料長度), 1. Customer 3. Smart_Phone 2. Order_list 4. Tabelt_Computer PRIMARY KEY(Order_Number) PRIMARY KEY(Order_Number) 指令格式: CREATE TABLE 表格名稱 ( 欄位名稱1 資料型別(資料長度), 欄位名稱2 資料型別(資料長度) PRIMARY KEY(欄位名稱) ) CREATE TABLE Customer ( Name char((16), Order_Number char(8) PRIMARY KEY(Order_Number) ) 設為PRIMARY KEY 表示該欄位不得為空值 且為唯一

檢視表格並輸入資料

SQL指令練習 情境模擬

Query: 以中文顯示欄位名稱 用途: 建置多語言網站時可使用 The Rename Operation Query: 以中文顯示欄位名稱 用途: 建置多語言網站時可使用 指令語法: SELECT `欄位1` as 新名稱 FROM `資料表名稱` WHERE 敘述式

Ordering the Display of Tuples Query: 將手機依照售價遞增排序 指令語法: SELECT `欄位` FROM `資料表` ORDER BY `要排序的欄位` DESC #遞減排序

Query: 排除網站中售價最高的手機 並顯示其他手機 Tuple Variables Query: 排除網站中售價最高的手機 並顯示其他手機 價格22030的HTC One沒有被顯示! 指令語法: SELECT `欄位名稱` FROM `資料表1`, `資料表1` as 表格變數名稱 WHERE 敘述式 # 由敘述式決定要顯示的東西,重點在於可以利用Tuple Varibles來比較相同表格內的欄位

各種Android版本的手機都顯示出來了 String Operation Query: 顯示作業系統為Android之手機 各種Android版本的手機都顯示出來了 指令語法: SELECT `欄位名稱` FROM `資料表名稱` WHERE `欄位名稱` LIKE “%要查詢的字串%” # %代表任何子字串 _代表任何字元

Set Operation – Union (聯集) Brand Apple ASUS Google HTC HUAWEI LG NOKIA SAMSUNG Sharp Sony Acer ViewSonic Query: 找出有販賣手機或平板的品牌 指令語法: SELECT `欄位名稱1` FROM `資料表名稱1` UNION SELECT `欄位名稱2` FROM `資料表名稱2`

Set Operation – Intersection (交集) MySQL指令語法: (替代語法) SELECT * FROM ( SELECT DISTINCT `欄位1` FROM `表格1` UNION ALL #欄位1和欄位2中相同的資料不會被彙整 SELECT DISTINCT `欄位2` FROM `表格2` ) AS TEMP GROUP BY TEMP.Brand #依照Brand欄位的名稱來做顯示 HAVING COUNT( * ) = 2 #顯示出現兩次的欄位 Query: 找出有販賣手機 也有販賣平板的品牌 不幸的是, 在MySQL中不存在交集指令! Brand Apple ASUS SAMSUNG SQL指令語法: SELECT `欄位名稱1` FROM `資料表名稱1` INTERSECT SELECT `欄位名稱2` FROM `資料表名稱2`

Set Operation – Complement (差集) Query: 找出只有販賣平板 但沒有販賣手機的品牌 在MySQL中亦不存在EXCEPT指令! Brand Acer ViewSonic SQL指令語法: SELECT `欄位名稱1` FROM `資料表名稱1` EXCEPT SELECT `欄位名稱2` FROM `資料表名稱2` MySQL指令語法: (替代語法) SELECT `欄位1` FROM `資料表1` LEFT JOIN `資料表名稱2` ON 資料表1.欄位1 = 資料表2.欄位2 WHERE 資料表2.欄位2 IS NULL

Aggreate Functions – Average Value Query: 找出所販售手機的平均價格 平均價格=14597.6923 指令語法: AVG(`欄位名稱`)

Aggreate Functions – 最大最小值 Query: 找出最貴和最便宜的手機 最低價手機:HUAWEI U8520 價格:5150 最高價手機:HTC ONE 價格:22030 指令語法: MIN(`欄位名稱`) MAX(`欄位名稱`)

Aggreate Functions – sum of value 指令語法: SUM(`欄位名稱`) Query: 找出目前訂單的總銷售額 先顯示出目前訂單的狀況 總銷售額=76210

心得感想 表格設計& 情境聯想心得

心得感想 這次練習,我覺得最困難的地方在於要設想一個情境問 題,並用指定的語法解決,因為要假設問題,就必須先 假設系統已經設計完畢,不過其實我們還沒學過如何分 割表格,所以在假設表格時就花了不少功夫,接著還要 設計出一些問題可以用到我們所教得語法,最後還要完 美的解決它! 在解決問題的過程中,我發現:表格設計的好壞真的很 重要!因為設計差的表格,你要讀娶得時候也會需要用 到非常複雜語法,增加程式設計師的困擾,我這次就被 我自己設計的訂單表格給逼瘋了! 接著,第二大困境,MySQL居然沒有提供交集與差集 的語法!這時候我們只能土法煉鋼,用既有的語法組合 來達到目的,設計的過程中,便以經使用到了COUNT, GROUP BY, HAVING等aggregate function。 最後,本來想設計出可以計算每個顧客所消費的總金額, 不過因為表格設計不良,所以只好改計算訂單的總銷售 額,相信等我們學會表格設計的方法後,一定可以更容 易的完成這個目標。

The End. Thank you!