扩展例子

插入一条记录

INSERT INTO 表名 [(字段1,…,字段n)] VALUES (值1,…,值n)

插入查询的结果

INSERT INTO 表名 (字段1,…,字段n) VALUES 子查询

例如:INSERT  INTO  Scores  VALUES ("990301", "大学计算机基础", 98)

DELETE FROM 表 [WHERE 条件]

注意: WHERE子句缺省,则删除表中所有的记录(表还在)

例如::DELETE FROM Scores WHERE 成绩<70

UPDATE 表 SET 字段1=表达式1, … ,字段n=表达式n [WHERE 条件]

注意: WHERE子句缺省,则修改表中所有的记录

例 将表Students中学生王涛的姓名改为王宝球

UPDATE  Students  SET  姓名=“王宝球”  WHERE  姓名="王涛"

例 将表Students中助学金低于200的学生加30元

UPDATE  Students  SET  助学金=助学金+30  WHERE  助学金<200

UPDATE语句一次只能对一个表进行修改

选择字段:

例7.10  查询所有的专业,查询结果中不出现重复的记录

SELECT DISTINCT 专业 FROM Students;

例7.11  使用合计函数,查询学生人数、最低助学金、最高助学金和平均助学金

SELECT    Count(*) AS 人数,        Min(助学金) AS 最低助学金,    Max(助学金) AS 最高助学金,   Avg(助学金) AS 平均助学金

FROM Students

例7.12 查询学生的姓名和年龄

SELECT 姓名, Year(Date())-Year(出生年月) AS 年龄 FROM Students

选择记录:

例7.13  显示所有非计算机专业学生的学号、姓名和年龄

SELECT 学号, 姓名, Year(Date())-Year(出生年月)  AS 年龄 FROM Students WHERE 专业<>"计算机"

例7.14 查询1981年(包括1981年)以前出生的女生姓名和出生年月。

SELECT 姓名,出生年月 FROM Students  WHERE 出生年月 < #1/1/1982#  AND 性别="女"

排序:

例7.15 查询所有党员学生的学号和姓名,并按助学金从小到大排序。

SELECT 学号, 姓名  FROM  Students  WHERE 党员=True  ORDER BY 助学金

可用多个关键字排序。例如,ORDER BY 专业 ASC, 助学金  DESC

ASC:表示升序,DESC:表示降序。

分组查询:

例7.16 查询每个专业学生人数。(简单分组)

SELECT 专业, count(*) AS 人数  FROM students  GROUP BY 专业;

例7.17 查询各专业男女生的平均助学金(复杂分组)

SELECT 专业,性别, Avg(助学金) AS 平均助学金  FROM Students  GROUP BY 专业, 性别

将专业和性别都相同的记录分在一组。

例7.18 对Scores表查询有2门课程成绩在75以上的学生的学号和课程数。分组后过滤

SELECT 学号, Count(*)  AS 课程数 FROM Scores  WHERE 成绩>=75 GROUP BY 学号

HAVING Count(*)>=2

连接查询:

例7.19 查询所有学生的学号、姓名、课程和成绩

SELECT  Students.学号,Students.姓名,Scores.课程, Scores.成绩  FROM  Students, Scores

WHERE  Students.学号 = Scores.学号

自动生成语句:

SELECT Students.学号, Students.姓名, Scores.课程, Scores.成绩 FROM Students INNER JOIN Scores  ON  Students.学号 = Scores.学号

例7.20 查询选修了“高等数学”课程的学生的学号、姓名和成绩。

SELECT  Students.学号, Students.姓名, Scores.成绩  FROM  Students, Scores

WHERE  Students.学号=Scores.学号 AND Scores.课程="高等数学"

上述语句可以改写为:

SELECT  Students.学号, Students.姓名, Scores.成绩 FROM  Students INNER JOIN  Scores

ON Students.学号 = Scores.学号 WHERE Scores.课程="高等数学"

嵌套查询:在SQL中,将一个SELECT语句查询块嵌套在另一个SELECT语句的WHERE子句或HAVING子句中称为嵌套查询

例7.21 查询没有学过大学计算机基础的学生的学号、姓名和专业

SELECT Students.学号, Students.姓名, Students.专业 FROM Students

WHERE Students.学号 Not in

(SELECT Scores.学号 FROM Scores  WHERE Scores.课程="大学计算机基础")

例7.22 查询与“邓倩梅”在同一个专业的学生的学号和姓名

SELECT Students.学号, Students.姓名 FROM Students  WHERE 专业 in

(SELECT Students.专业  FROM Students  WHERE  Students.姓名="邓倩梅")

MySQL 之 扩展例子的更多相关文章

  1. PHP安装mysql.so扩展

    在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...

  2. mysql定时任务简单例子

    mysql定时任务简单例子 ? 1 2 3 4 5 6 7 8 9     如果要每30秒执行以下语句:   [sql] update userinfo set endtime = now() WHE ...

  3. mysql触发器的例子--插入前更新数据

    本文介绍下,一个mysql触发器的例子,在数据插入前更新相关内容,有需要的朋友参考下. mysql触发器的例子,如下: view source print? 001 mysql> CREATE  ...

  4. mysql空间扩展 VS PostGIS

    http://www.cnblogs.com/LBSer/p/3629149.html 功能 Mysql spatial extension  PostGIS 空间索引 仅MyISAM支持R树索引,I ...

  5. php添加mysql.so扩展

    1.软件包安装 yum install php-mysql 安装的是mariadb的扩展 yum install php-mysqlnd 安装的是mysql的扩展

  6. PHP安装mysql.so扩展及相关PHP.ini 配置参数说明

    在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...

  7. Java中连接MySql数据库的例子

    Java中连接MySql数据库的例子: package com.joinmysql.demo; import java.sql.DriverManager; import java.sql.Resul ...

  8. MySQL索引扩展(Index Extensions)学习总结

    MySQL InnoDB的二级索引(Secondary Index)会自动补齐主键,将主键列追加到二级索引列后面.详细一点来说,InnoDB的二级索引(Secondary Index)除了存储索引列k ...

  9. 【译】Spring 4 + Hibernate 4 + Mysql + Maven集成例子(注解 + XML)

    前言 译文链接:http://websystique.com/spring/spring4-hibernate4-mysql-maven-integration-example-using-annot ...

随机推荐

  1. 2014新浪研发project师实习笔试(哈尔滨站)

    刚经历了新浪笔试,写篇博客记录一下下.方便以后查看. 一.基础题 1.栈和队列的异同点. 2.算法性能的4个评价标准. 排序算法中最稳定的算法. 那几个算法的空间复杂度是O(1)的. 3.线性表,平衡 ...

  2. js为Object对象动态添加属性和值 eval c.k c[k]

    const appendInfo = () => { const API_SECRET_KEY = 'https://github.com/dyq086/wepy-mall/tree/maste ...

  3. 【题解】Counting D-sets(容斥+欧拉定理)

    [题解]Counting D-sets(容斥+欧拉定理) 没时间写先咕咕咕. vjCodeChef - CNTDSETS 就是容斥,只是难了一二三四五\(\dots \inf\)点 题目大意: 给定你 ...

  4. Spring Boot 支持多种外部配置方式

    Spring Boot 支持多种外部配置方式 http://blog.csdn.net/isea533/article/details/50281151 这些方式优先级如下: 命令行参数 来自java ...

  5. POJ3693 Maximum repetition substring —— 后缀数组 重复次数最多的连续重复子串

    题目链接:https://vjudge.net/problem/POJ-3693 Maximum repetition substring Time Limit: 1000MS   Memory Li ...

  6. 9.2 NOIP提高组试题精解(1)

    9-16 poise.c #include <stdio.h> #define MAXN 1001 int main() { ], flag[MAXN] = { }; //保存6种砝码的数 ...

  7. js/html/css做一个简单的图片自动(auto)轮播效果//带注释

    FF(firefox)/chrom/ie稳定暂无bug...注意:请自己建立一个images文件,放入几张900*238的图片(注意图片格式和名字与程序中一致). 1. [图片] 1.JPG 2. [ ...

  8. 安装与设置hexo

    普通用户(非全局)安装nodejs和npm wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh nvm ins ...

  9. 基于深度学习的目标检测算法:SSD——常见的目标检测算法

    from:https://blog.csdn.net/u013989576/article/details/73439202 问题引入: 目前,常见的目标检测算法,如Faster R-CNN,存在着速 ...

  10. [原创]java导出excel

    一.需求背景 在项目开发中,经常会遇到导出Excel报表文件的情况,因为很多情况下,我们需要打印Excel报表,虽然在网页上也可以生成报表,但是打印网上里的报表是无法处理排版问题的,所以最好的方式,还 ...