四个基础语法
1. insert into 表名 (列名) [values] 值列表
insert into 表名 values 值列表
【扩展】插入多行:
1. insert into <表名> (列名)
select 列名
from <源表名>

2. select 列名
into <表名>
from <源表名>
【注】创建表,复制列名的结构及数据到新表中,但是,这个SQL语句只能使用一次

3. insert into <表名> (列名)
select 值列表 union
select 值列表

2. delete [from] 表名 [where条件]

3. update 表名 set 列名=值 , 列名2=值2 [where条件]

4. select 列名 from 表名 [where 条件]

多表查询:
  内连接(inner join ):
    select 表1.列名,表2.列名 from 表名1 as 表1 inner join 表名2 as 表2
    on 表1.字段名=表2.字段名
    inner join 表名3 as 表3
    on 表1.字段名=表3.字段名

  还可以用另一种写法

    select 表1.列名,表2.列名 from 表名1 as 表1,表名2 as 表2,表名3 as 表3

    where 表1.字段名=表2.字段名

    and  表1.字段名=表3.字段名

  外连接:
    左外:
      select 表1.列名,表2.列名 from 表名1 as
      表1 left outer join 表名2 as 表2
      on 表1.字段名=表2.字段名
    右外:
      select 表1.列名,表2.列名 from 表名1 as
      表1 right outer join 表名2 as 表2
      on 表1.字段名=表2.字段名

  其它知识点

     1. 模糊查询三种方式
      第一种:select 列名 from 表名 where 列名 like '表达式'
      /*
      常见通配符有以下四种:
        _ : 一个字符
        % : 任意长度的字符
        []:区间内的字符
        [^]: 不区间内的字符
        */
      第二种:select 列名 from 表名 where 列名 in (值1,值2)
      第三种:select 列名 from 表名 where 列名 between 值1 and 值2

      【注】:值2不大小于值1

    2. 判断是否为空
      空: 列名 is null or 列名=''
      不为空: 列名 not is null and 列名!=''

    3. 分组(group by...having)
      select 列名(group by 的列名,或者函数) from 表名
      where [条件]
      group by 列名
      having 条件
      order by 排序[asc|desc]

函数

  1. 聚合函数
    SUM(列名):和
    MAX(列名):最大值
    MIN(列名):最小值
    AVG(列名):平均值
    COUNT(列名):列数

    聚合函数是求不为空的个数、值、或者和

  2. 日期:当前日期:getdate()
    datediff(日期部分,日期1,日期2):求日期部分的差
    dateadd(日期部分,增加值,指定日期)
    datepart(日期部分,指定日期)
    datename(日期部分,指定日期)

  3. 字符串函数

    a. charindex(寻找的字符,搜索列[,起始位置]);
      在一段字符中搜索字符或字符串,返回起始位置,(注:起始位置从1开始,如果没有找到返回0)
      e.g select * from Student where charindex('金',StudentName)>0
    b. len(字符串|列名):返回字符串长度
      select len('hello world'); 返回11
    c. upper(字符串|列名):把传递的值转换成大写
      select upper('hello world'); HELLO WORLD
    d. ltrim(字符串|列名):去字符串左边的空格
      rtrim(字符串|列名):去字符串右边的空格
      e.g:select ltrim(' hello world ');
        select rtrim(' hello world ');
    e. right(字符串,长度):
      从字符串右边返回指定数目的字符
     left(字符串,长度)
      从字符串左边返回指定数目的字符
    f. replace(待搜索字符,待查询字符,替换用的字符)
      替换一个字符串中的字符
      e.g select replace('hello world','hello','hi');结果hi world

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

  1. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  2. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  3. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  4. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

  5. [SQL] SQL 基础知识梳理(五) - 复杂查询

    SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...

  6. [SQL] SQL 基础知识梳理(六)- 函数、谓词、CASE 表达式

    SQL 基础知识梳理(六)-  函数.谓词.CASE 表达式 目录 函数 谓词 CASE 表达式 一.函数 1.函数:输入某一值得到相应输出结果的功能,输入值称为“参数”,输出值称为“返回值”. 2. ...

  7. [SQL] SQL 基础知识梳理(七)- 集合运算

    SQL 基础知识梳理(七)- 集合运算 目录 表的加减法 联结(以列为单位) 一.表的加减法 1.集合:记录的集合(表.视图和查询的执行结果). 2.UNION(并集):表的加法 -- DDL:创建表 ...

  8. PySpark SQL 相关知识介绍

    title: PySpark SQL 相关知识介绍 summary: 关键词:大数据 Hadoop Hive Pig Kafka Spark PySpark SQL 集群管理器 PostgreSQL ...

  9. 常见SQL语句和SQL基础知识

    引自:http://blog.csdn.net/u012467492/article/details/46790205 SQL语句考察(一) 1.查询出每门课都大于80 分的学生姓名 name   k ...

  10. 031医疗项目-模块三:药品供应商目录模块——供货商药品目录查询功能----------sql补充知识

    这个补充知识有一个点很有必要,视屏上的老师提出一点: 内链接关联查询: 如果表A和表B有一个外键关联 ,可以通过外键进行内链接查询 select dictinfo.*, dicttype.typena ...

随机推荐

  1. css学习笔记 5

    将css引入到html页面中的方法: 用style属性设置样式 用<style>标签设置样式 用<link>标签引入外部样式文件 用@import引入外部样式文件 <li ...

  2. SQL server 常用语句

    SQL Server中常用的SQL语句   1.概述 2.查询概述 3.单表查询 4.连接查询 5.带有exists的相关子查询 6.SQL的集合操作 7.插入操作 8.删除操作 9.修改操作 10. ...

  3. 关于SAX

    某天,看到一些资料. 发现输入文件是一个使用SAX技术存储的文件格式.  于是在网上找了不少资料 ; 感慨计算机的世界真的是太有趣了. 在此做个简单的介绍. 时间序列数据挖掘是利用数据挖掘技术对一组与 ...

  4. boost.asio与boost.log同时使用导致socket不能正常收发数据

    现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...

  5. 51nod1265 四点共面

    题目链接:51nod 1265 四点共面 四个点构成的三个向量a,b,c共面的充要条件是存在不全为零的实数x,y,z满足x*a+y*b+z*c=0,然后想到线代了.. 其实就是三个向量的混合积为0:( ...

  6. FPGA图像处理 两路sensor的色调不一致

    怎么调?可以让两路sensor的色调一致.

  7. .frm,.myd,myi转换为.sql导入数据库

    先说说这几种文件是干什么的: *.frm是描述了表的结构, *.myd保存了表的数据记录, *.myi则是表的索引. 其实一个.frm文件就是对应的数据库中的一个表,表示数据表的表结构. .MYD文件 ...

  8. 如何让一个json文件显示在表格里

    <body> //首先得把架子搭起来 <table id = "tb" border="1"> <tr></tr> ...

  9. 代码成长记录之jquery this使用

    后台管理的一个项目,第一次主动尝试自己动手写交互,果然问题来了,之前想当然觉得自己能写,不动笔,真的是对自己不负责任啊! 效果图是这样的,按我的思维写下来是点击一个‘更改’  多个地方会同时触发下拉 ...

  10. 360浏览器兼容模式默认显示ie最高版本

    之前写完代码都会放在360浏览器里跑一边,基本没啥问题,因为设置的都是极速模式,极速模式内置的是webkit内核,后来测试人员测试了兼容模式,发现会出各种问题,打开控制台一看,“我的天呐”,默认的竟然 ...