首页 > 数据库 >idea内置数据库 + sql语句库表操作

idea内置数据库 + sql语句库表操作

时间:2024-07-18 22:51:31浏览次数:14  
标签:name -- idea 库表 emp sql now tb select

表数据操作,表是上一个博客里的表 tb_emp

-- dml:数据操作语言
-- dml:插入数据 - insert
-- 1.为tb_emp表的username ,name ,gender字段插入值
-- 所有用到引号的地方,用单引号双引号都可以
insert into tb_emp(username,name,gender,crate_time,update_time) value ('red','小红',1,now(),now());
-- 2.为tb_emp表的所有字段插入值
-- 时间也要放在引号里
-- 麻烦
insert into tb_emp(id, username, password, name, gender, image, job, entrydate, crate_time, update_time)
    value (null,'blue','123','小蓝',2,'1.jpg',1,'2024-7-18',now(),now());
-- 简单
insert into tb_emp value (null,'blue2','123','小蓝2',2,'1.jpg',1,'2024-7-18',now(),now());
-- 3.批量为tb_emp表的username ,name ,gender字段插入值
-- 小括号括起来并用逗号分隔
insert into tb_emp(username,name,gender,crate_time,update_time) value
    ('yellow','小黄',1,now(),now() ),
    ('green','小绿',1,now(),now() ),
    ('purple','小紫',1,now(),now() );


-- dml:更新数据 - update
-- 1. 将tb_emp表的id为3 的员工姓名name字段更新为’小兰‘
update tb_emp set name = '张兰' , update_time = now() where id = 9;
-- 2.将tb_emp所有员工入职时间更新为’2010-01-01‘
update tb_emp set entrydate = '2010-01-01' , update_time = now();


-- dml:删除数据 - delete
-- 1.删除tb_emp表中id为1的员工
delete from tb_emp where id = 1;
-- 2.删除tb_emp表中所有员工
delete from tb_emp;





-- dql:查询数据 - select
-- id, username, password, name, gender, image, job, entrydate, crate_time, update_time
-- ----------------------基本查询----------------------
-- 1.查询指定字段  name entrydate 并返回
select name , entrydate from tb_emp;
-- 2.查询返回所有字段
-- 麻烦,推荐
select id, username, password, name, gender, image, job, entrydate, crate_time, update_time from tb_emp;
-- 简单,不推荐,性能低
select * from tb_emp;
-- 3.查询所有员工的 name entrydate 并起别名(姓名,入职时间)
-- as可以省略
-- 特殊符合需要加引号
select name as '姓 名' , entrydate 入职时间 from tb_emp;
-- 4.查询已经有的员工关联了哪几种职位(不重复)
select distinct job from tb_emp;
-- ----------------------条件查询----------------------
-- 1.查询姓名为小红的员工
select * from tb_emp where name ='小红';
-- 2.查询id大于等于9的员工信息
select * from tb_emp where id <= 9;
-- 3.没有分配职位的员工信息
select * from tb_emp where job is null ;
-- 4.查询有职位的员工信息
select * from tb_emp where job is not null ;
-- 5.查询密码不等于’123456‘的员工信息
select * from tb_emp where password != '123456';
-- 一样
select * from tb_emp where password <> '123456';
-- 6.查询入职日期在’2000-01-01(包含)‘到’2010-01-01‘之间的员工信息
select * from tb_emp where entrydate >= '2000-01-01' and entrydate <= '2010-01-01';
-- 简化写法
select * from tb_emp where entrydate between '2000-01-01' and '2010-01-01';
-- 7.查询入职日期在’2000-01-01(包含)‘到’2010-01-01‘之间,性别为女的员工信息
select * from tb_emp where entrydate between '2000-01-01' and '2010-01-1' and gender = 2;
-- 8.查询职位是2或3或4的员工信息
select * from tb_emp where job = 2 or job = 3 or job = 4;
select * from tb_emp where job in (2 ,3,4);
-- 9.姓名为两个字的员工信息
-- _替代一个字符
select * from tb_emp where name like '__';
-- 10.查询姓张的动员工信息
-- %替代任意字符
select * from tb_emp where name like '张%';
-- ----------------------分组查询----------------------
-- 聚合函数 - null值不参与所有聚合函数的计算
-- 1.统计该企业员工数量 - count
-- a.count(字段)
select count(id) from tb_emp;
-- b.count(常量)
select count(0) from tb_emp;
-- c.count(*) - 推荐
select count(*) from tb_emp;
-- 2.统计该企业最早入职的员工 - min
select min(entrydate) from tb_emp;
-- 3.统计该企业最晚入职的员工 - max
select max(entrydate) from tb_emp;
-- 4.统计该企业员工id的平均值 - avg
select avg(id) from tb_emp;
-- 5.统计该企业员工的id之和 - sum
select sum(id) from tb_emp;
-- ----------------------分组查询
-- 1.根据性别分组,统计男性和女性员工数量 - count(*)
select gender , count(*) from tb_emp group by gender ;
-- 2.先查询入职时间在’2015-01-01‘以前的员工,并对及结果根据职位分组,获取员工数量大于等于2 的职位
-- 分组之前使用where进行筛选,分组之后使用having;聚合函数只能用having判断
-- 顺序:where-聚合-having
select job,count(*) from tb_emp where entrydate <= '2015-01-01' group by job having count(*) >= 2;
-- ----------------------排序查询----------------------
-- 1.根据入职时间,对员工进行升序排序 - asc (默认)    上到下:小到大
select * from tb_emp order by entrydate ; -- asc;
-- 2..根据入职时间,对员工进行降序排序 - desc   上到下:大到小
select * from tb_emp order by entrydate desc ;
-- 3.根据入职时间,对公司的员工进行升序排序,若入职时间相同再按照更新时间进行降序排序
select * from tb_emp order by entrydate , update_time desc;
-- ----------------------分页查询----------------------
-- 起始索引的计算公式:(页码 - 1) * 每页展示记录数
-- 1.从起始索引0开始查询员工数据,每页展示2条记录
select * from tb_emp limit 0,2;     -- 写法1
-- 2.查询第1页员工数据,每页展示2条记录
select * from tb_emp limit 2;     -- 写法2
-- 3.查询第2页员工数据,每页展示5条记录
select * from tb_emp limit 5,5;
-- 4.查询第3页员工数据,每页展示2条记录
select * from tb_emp limit 4,2;

 

标签:name,--,idea,库表,emp,sql,now,tb,select
From: https://www.cnblogs.com/yansans/p/18310552

相关文章

  • SQL 分页查询employees表,每5行一页,返回第2页的数据
    系列文章目录文章目录系列文章目录前言前言前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。描述分页查询employees表,每5行一页,返回第2页的数据CREATETABLEemploy......
  • SQL 平均工资
    系列文章目录文章目录系列文章目录前言前言前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。描述查找排除在职(to_date=‘9999-01-01’)员工的最大、最小salary之......
  • SQL 按照dept_no进行汇总
    系列文章目录文章目录系列文章目录前言前言前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。描述按照dept_no进行汇总,属于同一个部门的emp_no按照逗号进行连接,结果给......
  • SQL中用于处理条件逻辑和空值的函数
    在SQL中,CASEWHEN语句、COALESCE函数、IF函数(在某些数据库系统中,如MySQL)、IFNULL函数(同样在MySQL等中)以及NULLIF函数都是用于处理条件逻辑和空值(NULL)的重要工具。下面分别介绍这些函数,并提供相应的使用示例。CASEWHEN语句CASEWHEN是SQL中的条件表达式,允许你根据一系列条......
  • mysql触发器模板
    --当我们对dept表中的数据进行insertdeleteupdate的时候,请将这些操作记录到日志表当中--dept的表结构/*CREATETABLE`dept`(`DEPTNO`intNOTNULLCOMMENT'部门编号',`DNAME`varchar(14)CHARACTERSETutf8mb4COLLATEutf8mb4_0900_ai_ciDEFAULTNULLCOMMEN......
  • 通过脚本,将MySQL数据转换成单条insert语句
    通过命令,导出数据:SELECT*FROMusersINTOOUTFILE'/tmp/users_data.sql'FIELDSTERMINATEDBY','LINESTERMINATEDBY'\n';通过脚本,转成insert语句:#!/bin/envpython#-*-encoding:utf-8-*-#数据导出命令,注意修改表名#SELECT*FROMusersINTOOU......
  • Linux安装mysql(超详细版)
    步骤1:新建一个文件夹,专放从网络下载的文件[root@iZ2zeh6vyxsq620zifz8jaZhome]#mkdirsoft#在根目录下创建也可以步骤2:切换目录,进入soft文件中[root@iZ2zeh6vyxsq620zifz8jaZ/]#cdhome/#若第一步文件建在根目录则执行该语句,否则不执行[root@iZ2zeh6vyxsq620zif......
  • MySQL与地震学:地震波形数据的实时分析宝典
    ......
  • mysql8在CentOS8上安装实践
    一、下载https://dev.mysql.com/downloads/mysql/历史版本:https://downloads.mysql.com/archives/community/二、解压tar-zxvf/opt/software/mysql-8.0.33-linux-glibc2.28-x86_64.tar.gz-C/usr/local修改mysql目录名称mv/usr/local/mysql-8.0.33-linux-glibc2......
  • CentOS9中MySQL8数据库备份--增量备份方案
    1.关于备份:MySQL中有完全备份、增量备份和差异备份三种常见的备份策略,这次使用增量备份定义:增量备份仅备份自上一次备份(无论是完全备份还是增量备份)以来发生变化的数据。特点:依赖于上一次备份,仅备份变化的部分,因此备份文件较小,但恢复时需要结合之前的备份。优点:备份文件......