データベースを学ぶ必要がある場合は、Didiのビデオ教育データベースを作成し、データベーステーブルを作成し、データを追加し、データを削除し、データをクエリすることができます!!!!!

-- 创建数据库
CREATE DATABASE WORK;
-- 指定数据库
USE WORK;
/*
	国家名称	地区	面积(万平方米)	人口	国民生产总值(美元)
	name	region	area	population	gdp
	中国	亚洲	960	1200000000	1002800000000 
	美国	北美洲	937	300000000	1752800000000 
	日本	亚洲	37	125000000	484600000000 
	德国	欧洲	35	81640000	379400000000 
	英国	欧洲	24	58800000	282800000000 
	巴西	南美	854	160000000	221600000000 

*/
-- 创建表格
CREATE TABLE BBC(
	NAME VARCHAR(20),
	region VARCHAR(20),
	AREA NUMERIC(3),
	population NUMERIC(11),
	gdp NUMERIC(20)
);
-- 删除数据库
DROP DATABASE work1;
INSERT INTO BBC VALUES('中国','亚洲',960,1200000000,1002800000000);
INSERT INTO BBC VALUES('美国','北美洲',937,300000000,1752800000000);
INSERT INTO BBC VALUES('日本','亚洲',37,125000000,484600000000);
INSERT INTO BBC VALUES('德国','欧洲',35,81640000,282800000000);
INSERT INTO BBC VALUES('英国','欧洲',35,81640000,379400000000);
INSERT INTO BBC VALUES('英国','欧洲',24,58800000,282800000000);
INSERT INTO BBC VALUES('巴西','南美',854,160000000,221600000000);
-- 删除
DELETE  FROM BBC  WHERE  NAME !='日本';
/*
1	查询出所有国家的平均人口。平均GDP。			
2	查询出人口最少的国家的人数。			
3	查询出GDP最多的国家的GDP			
4	查询出各大洲的国家有几个。人口总数是多少,总GDP是多少。			
*/
/*
	聚合函数:
	Count 返回结果集的行数
	Sum  求结果集的和
	Avg   求结果集的平均值
	Max  求结果集的最大值
	Min 求结果值的最小值
*/
-- 第一小题
SELECT BBC.`name`, AVG(BBC.`population`) AS 平均人口 ,AVG(BBC.`gdp`) AS 平均GTP FROM BBC GROUP BY BBC.`name`;
-- 第二小题
SELECT bbc.`name`AS 国家, MIN(BBC.`population`) AS 最少人口的国家 FROM bbc WHERE bbc.`population`=58800000;
-- 第三题
SELECT bbc.`name`AS 国家,MAX(bbc.`gdp`) AS 最高GTP国家  FROM bbc WHERE bbc.`gdp`=1752800000000;
-- 第四题
SELECT * FROM bbc GROUP BY bbc.`region`;

-- =========================================================================================================================================
/*
主键	年份	诺贝尔奖项	得奖者	获奖国家
ID	yr	subject	winner	area
1	2000	java	张三	中国
2	2001	c++	李四	中国
3	2002	c	王五	日本
4	2002	java	赵六	日本
5	2002	c	刘八	美国
6	2002	c++	罗九	美国
7	2003	java	朱十	美国
8	2004	足球	陈十一	美国
9	2005	篮球	唐十二	美国
10	2006	乒乓球	隔壁老王	美国
*/
CREATE TABLE nobel(
	ID INT PRIMARY KEY AUTO_INCREMENT,
	yr NUMERIC(7),
	SUBJECT VARCHAR(10),
	winner VARCHAR(10),
	AREA VARCHAR(10)
);
-- 删除数据表
DROP TABLE nobel;
-- 查询nobel
SELECT * FROM nobel;
/*
1	查询出每年颁发的诺贝尔奖的个数。		
2	查询出得到诺贝尔奖个数超过2次的年份。		
3	查询出各国,各年份获奖次数,并按获奖次数降序		
4	查询出2002年之后获得奖项的国家.		
*/
-- 加入数据
INSERT INTO nobel VALUES(NULL,2000,'java','张三','中国');
INSERT INTO nobel VALUES(NULL,2001,'c++','李四','中国');
INSERT INTO nobel VALUES(NULL,2002,'c','王五','日本');
INSERT INTO nobel VALUES(NULL,2002,'java','赵六','日本');
INSERT INTO nobel VALUES(NULL,2002,'c','刘八','美国');
INSERT INTO nobel VALUES(NULL,2002,'c++','罗九','美国');
INSERT INTO nobel VALUES(NULL,2003,'java','朱十','美国');
INSERT INTO nobel VALUES(NULL,2004,'足球','陈十一','美国');
INSERT INTO nobel VALUES(NULL,2005,'篮球','唐十二','美国');
INSERT INTO nobel VALUES(NULL,2006,'乒乓球','隔壁老王','美国');
-- 查询 
SELECT  * FROM nobel;

-- 题目一
SELECT COUNT(nobel.`ID`) AS 诺贝尔奖总数 FROM nobel;
-- 题目二
SELECT nobel.`yr` FROM  nobel  GROUP BY nobel.`yr` HAVING COUNT(nobel.`yr`)>1;
-- 题目 三 
SELECT nobel.`area1` AS 国家 FROM nobel WHERE  nobel.`yr`>2002;

 

おすすめ

転載: blog.csdn.net/c_v_sCtrl/article/details/99718216