一、什么是sql?

全称:“结构化查询语言(Structured  Query Language)”,是1974年由Boyce和Chamberlin提出来的,现已经成为关系数据库的标准语言。

组成:DDL数据定义语言,用来建立数据库,数据库对象,和定义其列,大部分是以create开头的命令。

    DQL:数据查询语言,用来对数据库进行查询,如select等。

    DCL:数据控制语言,用来控制数据库组件的存取许可、存取权限等、如grant、remove等。

    DML:数据操作语言,用来插入、修改和删除数据库的数据,如insert、update及delete等。

二、DML语句

①y使用DML插入数据

1、插入单行数据

insert into 表名(字段名列表) values(值列表);

2、插入多行数据

insert into 表名(字段名列表) values(值列表1),~~~~~ values(值列表n);

3、查询结果插入新表

cteate table 表名(select 字段1,字段2,。。。字段n  from 原表);

②使用DML修改数据

update 表名 set 列名=更新值 where (更新条件);

③使用DML删除数据

delete from 表名 where(删除条件);#不可以删除整个列,所以不能在from前面加字段名。

truncate  table 表名 where(删除条件);#执行速度比dele快,删除后表列表的序号会重新开始编号。

五、DQL

1、查询语句

select <列名》

from <表名>

where <查询条件>

order by <排序的列名>  ASC(升序) 或者 DESC(降序);

①查询所有数据的行和列

select * from 表名;

②查询部分行或者列

select <列名1,~~~~列名n>

from 表名

where <条件语句>;

条件语句中’=‘表示是,'<>'表示不是;

③查询中使用列的别名(AS的用法)

如:select studentNo AS 学生编号,name AS 姓名

from student

where address <> '河南新乡';

合并两列使用别名

select firstName +'.'+lastName AS 名字  from 表名;

2、常用函数

①聚合函数

avg()返回某字段的平均值;

count() 返回某字段的行数;

max()返回某字段的最大值;

min()返回某字段的最小值;

sum()返回某字段的和;

②字符串函数

concat(str1,...strn) 连接字符串str1、。。。strn为完整的一个字符串。

insert(str,pos,len,newstr)将字符串str从pos位置开始,len个字符长的字串替换为字符串 newstr

lower(str)将字符串str中所有字符串变为小写。

upper(str)将字符串str中所有的字符串变为大写。

substring(str,num,len)返回字符串str的第num个位置开始长度为len的子字符串。

③时间日期函数

curdate()获取当前日期;

curtime()获取当前时间;

now()获取当前日期和时间;

week(date)返回日期date为一年中的第几周

year(date)返回日期date的年份

hour(date)返回日期date的小时

minute(date)返回日期date的分钟值

datediff(date1,date2)返回日期参数date1和date2之间相隔的天数

adddate(date,n)计算日期参数date加上n天之后的日期

④数学函数

ceil(x)返回大于或等于数值x的最小整数

floor(x)返回小于或等于数值x的最大整数

rand(x)返回0~1间的随机数

3、order by

order by  asc(desc)进行排序,默认是生序排列。

4、limit 子句

limit  位置偏移量,行数

位置偏移量指从结果集中第几条数据开始显示,(第1条记录的位置偏移量是0,第二条记录的位置偏移量是1,。。。也就是说是翻页显示第二页之类用的)当省略时从第1条记录开始显示。

行数指显示记录的条数。

六、子查询

1、简单子查询

select  .....from 表名 where 字段1 比较运算符 (子查询);

如 :select  studentNo,name,sex,borndate,address from student where borndate>(select borndate from student where name='小强');

比较运算符包括:>、=、<、>=、<=.

注意:子查询和比较运算符联合使用,必须保证子查询返回值不能多于一个。

2、in、not子查询

子查询返回值可以是多个,not in表示非的意思。

sql的基本知识的更多相关文章

  1. SQL server基础知识(表操作、数据约束、多表链接查询)

    SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...

  2. Sql Server 基础知识

    Sql Server 基础知识: http://blog.csdn.net/t6786780/article/details/4525652 Sql Server 语句大全: http://www.c ...

  3. SQL数据库基础知识-巩固篇<一>

    SQL数据库基础知识-巩固篇<一>... =============== 首先展示两款我个人很喜欢的数据库-专用于平时个人SQL技术的练习<特点:体积小,好安装和好卸载,功能完全够用 ...

  4. SQL语句之 知识补充

    SQL语句之 知识补充 一.存储过程 运用SQL语句,写出一个像函数的模块,这就是存储过程. 需求: 编写存储过程,查询所有员工 -- 创建存储过程(必须要指定结束符号) -- 定义结束符号 DELI ...

  5. 转:sql server锁知识及锁应用

    sql server锁(lock)知识及锁应用 提示:这里所摘抄的关于锁的知识有的是不同sql server版本的,对应于特定版本时会有问题. 一 关于锁的基础知识 (一). 为什么要引入锁 当多个用 ...

  6. Sqli-labs之sql注入基础知识

    (1)注入的分类 基于从服务器接收到的响应  ▲基于错误的SQL注入 ▲联合查询的类型 ▲堆查询注射 ▲SQL盲注 •基于布尔SQL盲注 •基于时间的SQL盲注 •基于报错的SQL盲注 基于如何处理输 ...

  7. 【SQL】- 基础知识梳理(二) - SQL简介

    一.引言 在梳理这些知识之前,说实话,如果有人问我SQL是什么?我可能会回答就是“INSERT,DELETE,UPDATE,SELECT”语句呗,还能是啥. 二.SQL概念 SQL是什么? SQL是S ...

  8. 【SQL】- 基础知识梳理(一) - 数据库

    一.引言 知识分享这个事情在公司会议上被提出过几次,可一直因各种事情耽搁下来,“我不如地狱,谁入地狱”,怀着这样一种心态,写下了 数据库系列知识分享. 本文将一步步通过循序渐进的方式带你去了解数据库. ...

  9. SQL Server群集知识介绍

    集群CLUSTER种类介绍 基于iSCSI的SQL Server 2012群集测试(一)--SQL群集安装 SQL Server群集如何在线检测 群集中的MS DTC分布式事务协调器 一.SQL Se ...

  10. SQL Server基础知识

    1.SQL Server表名为什么要加方括号? 这个不是必须要加,但表名或字段名如果引用了sqlserver中的关键字,数据库会不识别这到底是关键字还是表名(或字段名)时就必须要加. 比如,一个表名叫 ...

随机推荐

  1. python 浅析对return的理解

    最近很忙,但是还是很认真的学习python这个东西,不是出于什么目的,只是单纯的喜欢罢了.最近学习的东西比较简单,但是也遇到了一些问题,就是比较迷惑人的问题,今天小编就在这里讲讲自己的对return的 ...

  2. 从JS和jQuery浅谈DOM操作,当我们在获取时,究竟获取了什么

    0.写在前面的话 自己对前端的东西一直不是很熟,现在开始要想办法从前端各个地方去获取想要的属性值的时候,也基本是在网上现炒现卖,几周下来,发现自己还是迷迷糊糊,可以算是一无所获. 所以就抽时间,把这一 ...

  3. Hibernate关系映射之many-to-many

    1.建表 2.创建实体类及映射文件 Student.java类 public class Student implements java.io.Serializable { // Fields pri ...

  4. 从content-type设置看Spring MVC处理header的一个坑

    我们经常需要在HttpResponse中设置一些headers,我们使用Spring MVC框架的时候我们如何给Response设置Header呢? Sooooooooooooo easy, 看下面的 ...

  5. [转载]iOS开发之手势识别

    感觉有必要把iOS开发中的手势识别做一个小小的总结.在上一篇iOS开发之自定义表情键盘(组件封装与自动布局)博客中用到了一个轻击手势,就是在轻击TextView时从表情键盘回到系统键盘,在TextVi ...

  6. Codeforce E. Fire

    E. Fire time limit per test 2 seconds memory limit per test 256 megabytes input standard input outpu ...

  7. C++ static成员变量与static成员函数

    类中的静态成员真是个让人爱恨交加的特性.我决定好好总结一下静态类成员的知识点,以便自己在以后面试中,在此类问题上不在被动. 静态类成员包括静态数据成员和静态函数成员两部分.  一 静态数据成员:  类 ...

  8. POJ1032 Parliament(数论)

    New convocation of The Fool Land's Parliament consists of N delegates. According to the present regu ...

  9. Easyui后台管理角色权限控制

    最近需要做一个粗略的后台管理的权限,根据用户的等级来加载相应的菜单,控制到子菜单.使用的是Easyui这个框架. 1.我使用的mysql数据库.在这里我就建立四张表,角色表(tb_users),菜单表 ...

  10. php中常用的字符串截取函数mb_substr实例解释

    string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_ ...