博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用sql语言操作数据库里面的表
阅读量:7153 次
发布时间:2019-06-29

本文共 3044 字,大约阅读时间需要 10 分钟。

使用sql语言操作数据库里面的表

  • 创建表 
语句: create table 表名称 ( 字段 类型(长度), 字段 类型(长度) ) stuNo not null 唯一 示例:创建表 user,字段 id username password sex create table info(id int,name varchar(20),age int); create table info2(id int primary key ,name varchar(20),age int);

 

  • 展示数据库中一共有多少个表 
    • show tables;
  • mysql中数据类型 
    • 字符串型 
      • VARCHAR、CHAR 
      • 当创建表时候,使用字符串类型,name varchar(40),指定数据的长度 
      • varchar和char的区别: 
        • varchar的长度是可变的 变长 20 zhangsan 
        • char的长度是固定的 定长 20 zhangsan+12个空格 
    • 大数据类型 
      • BLOB(存音频,视频,图片等)、TEXT(存字符类型,文本文件) 
      • 使用这个类型可以存储文件,一般开发,不会直接把文件存到数据库里面,存视频的路径. 
    • 数值型 
      • mysql中 TINYINT SMALLINT INT BIGINT FLOAT DOUBLE 
      • Java中 byte short int long float double 
    • 逻辑性 
      • BIT 占1位,1字节占8位 
      •  类似java里面的boolean ​
    • 日期型 
      • DATE:用于表示日期 1945-08-15 
      • TIME:用于表示时间 19:10:40 
  • 查询表的结构 
    • desc + 表名称 desc info; 
    • mysql的约束
    • 第一种,非空约束 not null
      • 表示数据不能为空
    • 第二种,唯一性约束 unique
      • 表中的记录不能重复的
    • 第三种,主键约束 primary key 表示非空,唯一性 
    • 自动增长 auto_increment 
    • 一旦字段设置为主键,那么该字段就是非空并且唯一
  • 删除表 
    • drop + table + 表名称 drop table info;
  • 使用sql操作表里面的记录 
    • 往表里面添加记录 
      • 语句:insert into 要添加的表名称 values(要添加的值); 
      • 示例: insert into info values(2,’zhangsan’,17); 
    • 查询表里面的数据 
      • 语句:select 要查询的字段的名称 (*) from 表名称 where 条件 
      • 示例:select id,name,age from info; select * from info; 
    • 修改表里面的记录 
      • 语句:update 表名称 set 要修改的字段的名称1=修改的值2,要修改的字段的名称2=修改的值2 where 条件 
      • 示例:update info set age = 27 where id =1; 
    • 删除表里面的记录 删除记录 delete 
      • 语句:delete from 表名称 where 条件 
      • 示例:delete from info where id=2; 删除记录 如果不加where条件代表删除所有的 
    • 去除重复的记录 去除重复记录 distinct 
      • 语句 select distinct * from 表名; select distinct * from info;
  • where语句的使用 
    • 创建一张学生表 
      • create table student(id int primary key,name varchar(20),english int,math int);
    • 往学生表里面添加几条记录 
      • insert into student values(1, “aa”,100,80); 
      • insert into student values(2, “bb”,80,90); 
      • insert into student values(3, “aba”,70,80); 
    • 查询表里面英语成绩大于 80 
      • select * from student where english > 80; 
    • 查询表里面英语成绩是80 100的学生信息 
      • select * from student where english in(80,100); in里面有谁就查询谁 
    • 查询表里面英语成绩是70,并且数学成绩是80的学生信息 
      • select * from student where english = 70 and math=80; 
    • 查询英语成绩是70~100之间的值 
      • select * from student where english >= 70 and english <=100; 
    • 模糊查询 like 
      • select * from student where name like ‘%a%’;
    • order by使用 
      • 根据英语成绩 升序 
        • select * from student order by english asc; 默认升序 
      • 根据英语成绩 降序 desc 
        • select * from student order by english desc;
  • sql中的函数 (聚合函数)
    • 统计记录数    count
      • select count(*) from student; 
    • 算出英语成绩总和 sum 
      • select sum(math) from student; 
    • 算出英语成绩平均分 avg 总分/数量 
      • select sum(english)/count(*) from student; 
      • select avg(english) from student; 
    • 算出最大值 max 
      • select max(english) from student; 
    • 算出最小值 min 
      • select min(english) from student;
  • 分组操作 group by
    • 创建订单表 
      • create table orders (id int,name varchar(40),price int); 
      • insert into orders values(1,’电视’,2000); 
      • insert into orders values(2,’电视’,2000); 
      • insert into orders values(3,’苹果’,10); 
      • insert into orders values(4,’手机’,500); 
      • insert into orders values(5,’手机’,500); 
      • insert into orders values(6,’鼠标’,33); 
      • insert into orders values(7,’鼠标’,33); 
  • 练习一:统计orders表里面每类商品的总的价格 
    • select name,sum(price) from orders group by name; 
  • 练习二 对商品进行分类,得到每类商品的总价格大于66的商品 where关键字后面不可以加聚合函数 
    • select name,sum(price) from orders group by name having sum(price)>66;
  • limit
    • limit 0 2. 0代表从第几条开始查 2:代表查询的个数.

转载于:https://www.cnblogs.com/nangongyibin/p/10200178.html

你可能感兴趣的文章
链路聚合
查看>>
CodingTMD’s Reading List
查看>>
如何将可执行文件打包至APK并运行(转)
查看>>
值类型与引用类型
查看>>
<转>如何测试大型ERP软件?
查看>>
Python爬虫学习==>第一章:Python3+Pip环境配置
查看>>
大数据-09-Intellij idea 开发java程序操作HDFS
查看>>
小米4c jni调用CallStaticIntMethod报错问题解决
查看>>
centos7安装配置git
查看>>
Unattend.xml应答文件制作(WISM)
查看>>
Mysql中文乱码问题完美解决方案
查看>>
Linux编程 15 文件权限(用户管理 useradd,userdel,usermod,passwd,chpasswd,chsh, chfn,chage)
查看>>
Linux编程 21 shell编程(环境变量,用户变量,命令替换)
查看>>
神经网络和深度学习 笔记
查看>>
Python全栈学习_day010作业
查看>>
JAVA面向对象()上)
查看>>
搭建LNMP环境(CentOS 6)
查看>>
C# 面向对象零碎知识点
查看>>
【RMAN】使用RMAN的 Compressed Backupsets备份压缩技术 (转载)
查看>>
博弈论之威佐夫博弈(转载)
查看>>