基本查询

1.修改
String sql="update smbms_user set userCode=?,userName=? where id=?";

2.删除用户
String sql="delete from smbms_user where id=?";

3.登录
select * from user where userName=#{userName} and userPassword=#{userPassword}

4.模糊查询
select * from smbms_bill WHERE productName like "%米%"

5.处理年龄
SELECT floor(DATEDIFF(NOW(),birthday)/365) as age, u.*,r.roleName as userRoleName from smbms_user as u,smbms_role as r WHERE u.userRole = r.id

6.查news表格,要求按主题生活(topic表格,有生活,娱乐等)分类,按创建时间降序查询,并取前5条
SELECT * from news WHERE ntid=1 ORDER BY ncreateDate ASC LIMIT 0,6;

7.查全部新闻按降序排序,并取前5条
SELECT * from easybuy_news ORDER BY createTime DESC LIMIT 0,5;

8.通过用户的id来查地址
select * from easybuy_user_address where userId=#{id}

9.插入
INSERT INTO ebook_category(id,name) VALUES(2,"oracle");
INSERT INTO ebook_entry(id,categoryId,title,summary,uploaduser,createdate) VALUES(2,1,"美食","美食摘要","tome",NOW());

10.创表
create table product(
pid int(4) primary key auto_increment,
name VARCHAR(20),
catalog_name varchar(20),
price int(10),
picture varchar(20) );

sql语句-视图

#视图。就是一个虚拟表,便于我们对数据进行处理。对视图的DML操作会改变基表数据,但不能改变基表结构,如加字段

为什么要使用视图:

<1>安全原因:限制数据的访问(如:社会保险基金表,可以使用视图只显示姓名和地址,而不显示社会的保险号和工资)

<2>减少复杂的slq语句查询,一般是用查询结果集返回作为视图

例:

create view empnew_view as select eid,ename,salary from emp //创建视图

select * from empnew_view; //查询视图

insert into empnew_view(eid,ename,salary) values(99,'qi1qi',66) //DML操作

update emp set ename="qiqi1" where eid=88 //DML操作

delete from emp where eid=88 //DML操作

DESC v;

#索引,方便我们的快速查找,方便我们快速查找,对SQL非常有帮助,并不是所有字段都用索引,

//前提,这个字段经常被当做查询对象操作,是一个表里面不是索引越多越好,根据你的具体,项目来设置,一张表里面与其他表有关系重合的,不适合加索引

#查看所有所有 index

SHOW INDEX FROM result;

TABLE 表 第二个字段0不可以重复,1代表可以重复

第三个参数:索引名字 第四个是索引下标,从1开始 第五个:字段名 第六个:排序规则, 默认是a

sql语句-触发器

//创建一个空部门表

CREATE TABLE emp(

eid INT(4),

ename VARCHAR(20),

epwd VARCHAR(20),

edate DATE

);

ALTER TABLE emp ADD salary DOUBLE(5,2);

INSERT INTO emp(eid,ename,epwd) VALUES (1,"aa","123");

#创建绩效表

CREATE TABLE jixiao(

jname VARCHAR(20),

jmoney DOUBLE(5,2)

);

#创建触发器:就相当于你的闹钟,在插入数据之前执行,当emp表插入数据的时候,另一个jixiao表也同时插入数据

CREATE TRIGGER t_money BEFORE INSERT ON emp FOR EACH ROW

INSERT INTO jixiao VALUES(new.ename,new.salary*0.5);

#创建触发器2:

CREATE TRIGGER t_mo BEFORE INSERT ON emp FOR EACH ROW

UPDATE emp SET money=new.money;

INSERT INTO emp(eid,ename,salary) VALUES(11,"ee",20);

UPDATE jixiao SET money=1;

SELECT * FROM jixiao;

#删除触发器

DROP TRIGGER t_money;

#展示触发器

SHOW TRIGGERS;

sql语句---索引

//创建一个主键索引(唯一,不能为空,不一定是INT)

ALTER TABLE emp ADD PRIMARY KEY(eid);

SHOW INDEX FROM emp;

//唯一索引(主键索引在一张表里只能有一个,唯一索引可以有多个);

#创建唯一索引,#在添加唯一索引时,乱码添加不成功

ALTER TABLE emp ADD UNIQUE(ename);

#删除索引

ALTER TABLE emp DROP INDEX ename;

#全局索引作用:便于我们快速查找到某一行

ALTER TABLE emp ADD INDEX(epwd);

Mysql基本查询、视图、索引、触发器的更多相关文章

  1. mysql八:视图、触发器、事务、存储过程、函数

    一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...

  2. Oracle-序列-存储过程-视图-索引-触发器

    课程介绍 1. 约束(掌握) 2. 序列(掌握) 3. 索引(掌握) 4. 视图(掌握) 5. 存储过程(掌握) 6. 自定义函数(掌握) 7. 触发器(掌握) 数据库对象的命名规则 1.对象名称必须 ...

  3. mysql七:视图、触发器、事务、存储过程、函数

    阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名 ...

  4. Mysql(七):视图、触发器、事务、存储过程、函数

    一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...

  5. mysql数据库之视图、触发器

    视图 概念:通过查询得到的一张虚拟表,然后保存下来就是视图 视图的好处:如果要频繁使用某张虚拟表,那么就可以保存为视图,以后查找就直接拿这个视图就会非常方便 视图语法规则: create view t ...

  6. 关于阿里云Mysql分页查询不走索引的问题

    需要修改阿里云中的MYSQL 配置参数 : eq_range_index_dive_limit 阿里云上默认是 10 , 这个参数 表示 in 查询 条件超过 10 个 就不走索引,走全表扫描.如果我 ...

  7. MySQL高级查询之索引创建、删除、增加、修改、慢sql、explain解释sql

    day04数据库 昨日知识点回顾 1.单表操作 1.单表的操作 条件查询的优先级别: where > group by >having > order by > limit; ...

  8. mysql延迟查询, 覆盖索引使用例子

    引用自 'mysql高性能' 5.3.6章节 不能使用覆盖索引的情况 :  解决办法 : 

  9. MySQL like查询使用索引

    在使用msyql进行模糊查询的时候,很自然的会用到like语句,通常情况下,在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时候,查询的效率就很容易显现出来.这个时候查询的效率就 ...

  10. MySQL知识补充(表字段操作、视图、触发器、事物、存储过程、内置函数、流程控制、索引、慢查询)

    今日内容概要 表字段操作补充(掌握) 视图(了解) 触发器(了解) 事务(掌握) 存储过程(了解) 内置函数(了解) 流程控制(了解) 索引(熟悉) 内容详细 1.表字段操作补充 # 1.添加表字段 ...

随机推荐

  1. python生成器 获取 目录下文件

    # os.walk()和os.list 都是得到所有文件的列表, 如果目录下文件特别多, 上亿了, 我们就需要生成器的方式获取 # 要求目录下面没有目录, 会递归到子目录下面找文件, (如果有子目录可 ...

  2. 对Python选修课的期望

    作为一个之前完全没有接触过任何计算机语言的人我对于Python完完全全是个小白,那么我就以一个菜鸟的角度来谈谈我对这门选修课的期望吧.                                  ...

  3. 适用于 iOS、Android 和 Windows 设备的移动设备管理

    适用于 iOS.Android 和 Windows 设备的移动设备管理 随着企业环境中移动设备的数量不断增加,详细检查访问您企业资源的移动设备变得至关重要.统一终端管理软件 Desktop Centr ...

  4. PHP获取日期时间信息

    getdate函数 描述:可以获取日期/时间信息 语法:array getdate( [ int timestamp ] ) 返回一个数组 例: Array ( [seconds] => 30 ...

  5. js group by

    var arr = ['Car', 'Car', 'Truck', 'Boat', 'Truck'];var hist = {};hist = arr.reduce((prev, item) => ...

  6. Linux---基础指令(一)

    https://www.linuxprobe.com/chapter-02.html  (Linux就要这么学) 一.执行查看帮助命令 date:date命令用于显示及设置系统的时间或日期,格式为“d ...

  7. MySQL事物管理

    sql语句对数据库操作构成事物. 事物的特性:ACID •Atomicity(原子性):一个事物要么全都被执行,要么全都不执行,不会存在执行结束在中间环节.如果事物在执行过程中发生异常,则会回滚到事物 ...

  8. js的map方法遍历数组

    map方法有返回值,返回值用变量接收. 例子: var num = [1, 2, 3]; var newNum = num.map((ele, index) => { return ele + ...

  9. wx支付

    开通微信商户号且开通微信公众平台微信支付功能   104680c86fd352725be198b02dc8258b 微信公众号和微信商户平台在微信支付中扮演的角色,公众号是我们在网页要进行支付的场所, ...

  10. WebApi零碎总结

    1.如果Content-Type是application/json,而POST和PUT的参数是[FromBody] string value,那么如果curl -d的值是'{"Name&qu ...