一、基础

  模式定义了数据如何存储、存储什么样的数据库以及数据如何分解等信息,数据库和表都有模式。关于数据库的模式可以参考这里:https://blog.csdn.net/liaohong940908/article/details/51906697

  主键的值不允许修改,也不允许复用,也就是不能使用已经删除的主键值赋值给新数据的主键。

  SQL语句不区分大小写,但是数据库表名、列名是否区分依赖于具体的DBMS以及配置

  SQL的注释方式:

    ①#注释

    ②select * from mytable --注释

    ③/*

    注释

    */

二、创建表

  create table mytable(

  id int not null auto_increment,

  col1 int not null default 1,

  col2 varchar(10) null,

  col3 date null,

  primary key ('id')

  );

三、修改表

  添加列

    alter table mytable add col4 char(5);

  删除列

    alter table mytable drop column col;

  删除表

    drop table mytable;

四、插入

  普通插入

    insert into mytable (col1,col2) values(val1,val2);

  插入搜索出来的数据

    insert into mytable (col1,col2) select col1,col2 from mytable;

  将一个表的内容插入到一个新表

    create table newtable as select * from mytable;

五、更新

  update mytable set col=val where id=1;

六、删除

  delete from mytable where id=1;

  truncate table 清空表,即删除了所有行

七、查询

  select distinct col1,col2 from mytable;  distinct:相同值只会出先一次,这句就是选择相同的列

  select * from mytable limit 5;  限制返回5行

  select * from mytable limit 0,5;  限制返回5行

  select * from mytable limit 2,3  返回3~5行

八、排序

  asc  升序,也是默认

  desc  降序

  可以按多个列进行排序,并且为每个列指定不同的排序方式:

    select * from mytable order by col1 desc,col2 asc;

九、过滤

  select * from mytable where col is null

  下面显示了where子句可用的操作符:

    = 等于  < 小于  > 大于

    <> 不等于  != 不等于

    <= 小于等于  !> 小于等于

    &gt;= 大于等于  !< 大于等于

    between 在两个值之间

    is null 为null的值  注意:null 与 0 、空字符串都不同

    and or 用于连接多个过滤条件,优先处理 AND,当一个过滤表达式涉及到多个 AND 和 OR 时,可以使用 () 来决定优先级,使得优先级关系更清晰。

    in 操作符用于匹配一组值,其后也可以接一个 select子句,从而匹配子查询得到的一组值。

    not 操作符用于否定一个条件。

十、通配符

  %  匹配>=0个任意字符

  \    匹配1个任意字符

  []   可以匹配集合内字符,类似正则表达式;^可以否定其内容。

  eg:  select * from mytable where col like '[^AB]'  不以A和B开头的任意文本

  注意:不要滥用通配符,通配符位于开头处匹配会非常慢。

mysql基础知识(1)的更多相关文章

  1. mysql基础知识大全

    前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里作简单概括性的介绍,具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续会慢慢补充完善. 数据库和数据库软件 数据库是 ...

  2. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  3. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  4. MySQL 基础知识梳理

    MySQL 的安装方式有多种,但是对于不同场景,会有最适合该场景的 MySQL 安装方式,下面就介绍一下 MySQL 常见的安装方法,包括 rpm 安装,yum 安装,通用二进制安装以及源码编译安装, ...

  5. MySQL基础知识:启动管理和账号管理

    整理.记录常用的MySQL基础知识:时间久了,很多就忘记了. 操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL. ...

  6. MySQL基础知识:创建MySQL数据库和表

    虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外 ...

  7. MySQL基础知识:Character Set和Collation

    A character set is a set of symbols and encodings. A collation is a set of rules for comparing chara ...

  8. mysql基础知识详解

    分享一些mysql数据库的基础知识. 1.每个客户端连接都会从服务器进程中分到一个属于它的线程.而该连接的相应查询都都会通过该线程处理.2.服务器会缓存线程.因此并不会为每个新连接创建或者销毁线程.3 ...

  9. Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型

    1.基础知识 1.1.数据库概述 简单地说:数据库(Database或DB)是存储.管理数据的容器: 严格地说:数据库是"按照某种数据结构对数据进行组织.存储和管理的容器". 总结 ...

  10. 一、MySQL基础知识

    一.背景介绍 我们每天都在访问各种网站.APP,如微信.QQ.抖音,今日头条等,这些东西上面都存在大量的信息,这些信息都需要有地方存储,存储在哪里呢?数据库. 所有我们需要开发一个网站.APP,数据库 ...

随机推荐

  1. svn更新的时候出现ERROR:Previous operation has not finished,run "clean up" if it wa interrupted;进行clean up命令也报错

    报错的截图: 然后进行了clean up命令,依旧报错了: 这种情况就有两种方法去解决了,自己可以根据自己的情况选择,哪种方便选择哪种呗! 方法一: 备份自己修改的文件,删除之前download的文件 ...

  2. Mybatis-Plus 实战完整学习笔记(四)------全局参数配置

    一.全局配置设置 (1)全局配置Id自动生成 <!--定义mybatisplus全局配置--> <bean id="globalConfig" class=&qu ...

  3. 关于写css文件需要注意的事项

    通常在项目中,我们尽量不要把style样式写在html中,而是使用外部.css文件的形式添加样式.在编写.css文件时,一定一定一定要注意,不要在一个css语句中写同级class名字,否则会出错,找不 ...

  4. MySQL 安装与使用(三)

    操作系统:CentOS release 5.10 (Final) MySQL版本:5.1.72-community 占位学习与编辑中……

  5. AI模型训练/算法评估 测试员

  6. linux下禁用SELinux

    http://chenzhou123520.iteye.com/blog/1313582 如何开启或关闭SELinux RedHat的 /etc/sysconfig/selinux 在新版本中的Red ...

  7. web-day4

    第4章WEB04- JQuery篇 今日任务 使用JQuery完成页面定时弹出广告 使用JQuery完成表格的隔行换色 使用JQuery完成复选框的全选效果 使用JQuery完成省市联动效果 使用JQ ...

  8. QT中的线程与事件循环理解(1)

    1.需要使用多线程管理的例子 一个进程可以有一个或更多线程同时运行.线程可以看做是“轻量级进程”,进程完全由操作系统管理,线程即可以由操作系统管理,也可以由应用程序管理.Qt 使用QThread 来管 ...

  9. springmvc配置文件web.xml详解各方总结。

    Spring分为多个文件进行分别的配置,其中在servlet-name中如果没有指定init-param属性,那么系统自动寻找的spring配置文件为[servlet-name]-servlet.xm ...

  10. SignalR 设计理念(一)

    SignalR 设计理念(一) 实现客户端和服务器端的实时通讯. 问题阐述 客户端提供的方法不确定! 客户端的方法参数不确定! 不同的名称和参数要分别调用指定的方法! 调用客户端方法时,忽略大小写! ...