sql学习笔记1

参考:

1、《SQL学习指南》

2、慕课网,SQL学习基础

提纲:

第二章 创建和使用数据库

2.1 创建MYSQL数据库

2.2 使用mysql命令行工具

2.3 MySQL数据类型

  2.3.1 字符型数据

  2.3.2 数值型数据

  2.3.3 时间数据

2.4 表的创建

  2.4.1 第一步:设计

  2.4.2 第二步:精华

  2.4.3 第三步:构建SQL方案语句

2.5 操作和修改表

  2.5.1 插入数据

  2.5.2 更新数据

  2.5.3 删除数据

2.6 导致错误的语句

  2.6.1 主键不唯一

  2.6.2 不存在的外键

  2.6.3 列值不合法

  2.6.4 无效的日期转换

  问题:什么是主键约束、外键约束?http://www.cnblogs.com/netserver/archive/2011/12/15/2289013.html

  外键约束只能在使用InnoDB 存储引擎创建表时才起作用。第12章将会讨论MySQL的存储引擎。

2.7 Bank方案

第三章 查询入门

3.1 查询机制

3.2 查询语句



字句名称  使用的目的

select 语句由几个组件或者字句组成。

select 确定结果集中应该包含哪些列

from 指明所要提取数据的表,以及这些表是如何连接的

where 过滤不需要的数据

group by 用语对具有相同列值的行进行分组

having 过滤掉不需要的组

order by 按一个或多个列,对最后结果集中的行进行排序



3.3 select 字句

  内建函数、别名、去除重复的行

3.4 from字句

  表的概念(永久表:使用create table语句创建的表、临时表:子查询返回的表,虚拟表:使用create view字句)

  子查询产生的表

  视图、表连接、定义表别名

3.5 where字句

3.6 group by 和having字句

group by 是用根据列值对数据进行分组。举例子来说,也许你并不需要查看雇员和他们所处部门的列表,而是想要获取部门和它所拥有雇员数的清单。

SELECT d.name,count(e.emp_id) num_employees

FROM department d INNER JOIN employee e ON d.dept_id = e.dept_id

GROUP BY d.name

HAVING count(e.emp_id)>2;

3.7 order by 字句

  默认是升序排列,可以根据表达式排序、根据数字占位符排序

时间: 2024-12-05 22:20:21

sql学习笔记1的相关文章

Oracle之PL/SQL学习笔记

自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家批评指正. PL/SQL定义:PL/SQL是由Oracle开发,专门用于Oracle的程序设计语言. PL---Procedural Language. SQL—Structure QueryLanguage.PL/SQL包括过程化语句和SQL语句     PL/SQL的单位:块. 一个块中可以嵌套

SQL学习笔记:选取第N条记录

Northwind数据库,选取价格第二高的产品. 有两种方法,一个是用Row_Number()函数: SELECT productname FROM (SELECT TOP 2 productname, Row_Number() OVER (ORDER BY unitprice desc) AS rownum FROM Products) AS tbl WHERE rownum = 2; 另一种是对子语句的的结果再进行排序: SELECT top 1 productname FROM (SELE

Oracle之PL/SQL学习笔记之触发器

Oracle之PL/SQL学习笔记之触发器 触发器是许多关系数据库系统都提供的一项技术.在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过程的PL/SQL块. 触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来启动运行. 即触发器是当某个事件发生时自动地隐式运行.并且,触发器不能接收参数.所以运行触发器就叫触发或点火(firing).ORACLE事件指的是对数据库的表进行的INSERT. UPDATE及D

Oracle之PL/SQL学习笔记之数据类型(三)

Oracle之PL/SQL学习笔记之数据类型(三) 所有的编程语言中变量是使用最频繁的.PL/SQL作为一个面向过程的数据库编程语言同样少不了变量,利用变量可以把PL/SQL块需要的参数传递进来,做到动态执行程序,同时也可以利用变量在PL/SQL内部进行值得传递,甚至可以把值传递出去,最终返回给用户,由此可见,变量是PL/SQL不可或缺的一部分. 1. Oracle预定义的普通数据类型(常见的数据类型) 类型 子类 说明 Oracle中的范围 char Character,String Rowi

SQL学习笔记——导论

果然虽然不努力不一定成功但是放弃了就会很轻松--嗯,acm的道路就此走到头了,虽然可能后面会有点小插曲但是从此以后走向刷绩点的道路这是可以肯定的了. SQL的学习笔记是以数据库系统概念的英文原本为主题的整理和翻译,分为sql的使用类型和数据库概念的解析类型.sql的使用类型里一般会带有实例,数据库概念大概就是一些翻译和总结,大概一篇对应原书的20页吧,不过可能会有修改. 反正写了也没有人看啊233

sql学习笔记2

<SQL学习指南>第9章 子查询 参考:leetcode 2 ---------------------- 9.1 啥是子查询 9.2 子查询的类型 基于结果集的类型:单行/单列,单行/多列,多行/多列 完全独立的(非关联子查询).引用包含语句中的列(关联查询) 9.3 非关联子查询 前面讲的都是非关联的,可以的单独执行而不需要引用包含语句中的任何的内容.我们遇到的大多数的子查询都是这种类型,但是更新或者 删除语句会经常遇到关联子查询. 另外一个特点,前面的子查询除了是非关联的外,返回的都是一

sql学习笔记(21)----------添加外键

最近在忙考试,比较烦!本人一见到考试就蒙圈了!完全大脑空白,不受控制,再加上变态监考老师,更别提有多痛苦了.还好,顺利完成了考试,抽出点空来学习一下MySQL和Oracle,发现点问题,好似很严重. 那么,我想问:  如果让你写SQL语句,添加外键,你会怎么写,如果这就是面试题,你该怎么写呢? 反正我是写不全,不能完全的写正确,平时我们都是是通过数据库的图形工具直接就可以操作主键和外键的设定,但是,如果动真格的去写一些SQL语句,似乎就很吃力了吧!所以我劝自己和读者,耐心点去写一些SQL语句,百

SQL学习笔记之数据库专题(二):Android下SQL数据库开发

在Android开发 中,数据库是不可缺少的.在Android开发中,用的是一种小型的嵌入式数据库,sqllite.今天会写两篇关于Android开发环境下数据库开发的文章,第一篇先介绍使用android自带的API来实现数据库的使用和管理以及增删改查.数据库升级的相关操作. 一.数据库第一次生成 1.javabean文件的准备 这里以一个Person类为例子来描述 package com.example.freedomsql.bean; import java.io.Serializable;

SQL学习笔记之数据库专题(四):浅谈JDBC用法

数据库厂商提供的用来操作数据库用的jar包就是数据库驱动.各个厂商如果提供各自的数据库驱动的话会导致开发人员学习成本太高,所以sun公司提供了一套数据库驱动应该遵循的接口规范,这套规范就叫做JDBC,本质上是很多的接口.简而言之,JDBC就是一套操作数据库的接口规范,由于所有的数据库驱动都遵循JDBC规范,我们在学习和使用数据库时只要学习JDBC中的接口就可以了. 组成JDBC的2个包:java.sql,javax.sql,开发JDBC应用需要以上2个包的支持外,还需要导入相应JDBC的数据库实