day020

show databases;

drop database XXX;

SHOW TABLES;

create table XXX(字段名 类型(长度),…)DEFAULT CHARACTER SET utf8;

初级程序员,对数据的操作(对数据的增删改查)最重要

update 表名 set 字段名=XXX where 字段名=DDD;

delete from 表名;

insert 表名 values(字段1,字段2);

select * from 表名;

alter table 表名 add column 列名 NUMERIC(总位数,小数位);

desc 表名;

set names gbk;//防止中文乱码

exit

#################################################

图形化界面中:

double类型字段,长度必须写小数位数

如:double 3,1

#################################################

字段约束
当表里的字段值想要添加约束条件时,就可以使用各种字段约束
通常在创建表时就已确定,那些字段添加哪种约束

主键约束---此字段变为主键,并拥有主键特点(唯一,非空)
非空约束---此字段不可为空
唯一约束---此字段必须唯一

主键约束–primary key
CREATE TABLE 表名(列名 类型 PRIMARY KEY AUTO_INCREMENT);
(AUTO_INCREMENT–自动递增)

非空约束–not null
CREATE TABLE 表名 (列名 类型 NOT NULL);

唯一约束–unique
CREATE TABLE 表名 (列名 类型 UNIQUE);

#################################################

								<SQL基础函数>

lower 转小写
upper 转大写
SELECT 列名1,列名2,LOWER(列名1),UPPER(列名2) FROM 表名;

length 字段值长度(1个字母/数字占1;1个数字占3)
SELECT 列名1,LENGTH(列名1) FROM 表名;

substr 截取字符串
SELECT 列名1,SUBSTR(列名1,从第几个开始截取),SUBSTR(列名1,从第几个开始截取,截取几个)FROM 表名;

concat 拼接字符串
SELECT 列名1,CONCAT(列名1,“XXXXXX”,123,456,…)FROM 表名;

replace 替换
SELECT 列名1,CONCAT(666,SUBSTR(列名1,从第几个开始截取))FROM 表名;

SELECT 列名1,REPLACE(列名1,‘a’,666)FROM 表名;

ifnull 替换指定字段中的null为其他值
SELECT 列名1 ,IFNULL(列名1,XXXX)FROM 表名;
两个字段合计
SELECT 底薪,绩效,底薪+IFNULL(绩效,0) FROM 表名;
12薪年收入
SELECT 底薪,绩效,底薪*12+IFNULL(绩效,0)*12 FROM 表名;

round小数四舍五入 & ceil小数进一位(向上取整) & floor小数直接舍去(向下取整)
SELECT 列名1 ,ROUND(列名1)FROM 表名;
SELECT 列名1 ,CEIL(列名1)FROM 表名;
SELECT 列名1 ,FLOOR(列名1)FROM 表名;

now获取当前年月日时分秒
SELECT NOW();

year & month & day年月日
获取年…
SELECT YEAR(NOW());
SELECT YEAR(‘2020-08-26’),MONTH(NOW()),DAY(NOW()),HOUR(NOW()),MINUTE(NOW()),SECOND(NOW());

转义字符
SELECT ‘xi’an’;错误
SELECT ‘xi’an’;正确,输出xi’an

查指定列
select 列名 from 表名;
select 列名1,列名2 from 表名;
效率:查越少越快

uuid显示通用唯一识别码
SELECT UUID();
这个值可以认为是每次执行都不相同。并且不同实例之间也只有极微小概率重复。

#################################################

							<条件查询>

distinct 在搜索结果中去除重复的记录行
SELECT DISTINCT 列名 FROM 表名;

where 条件查询
注意:where中不能使用列别名!!
select * from emp where empno=100; 唯一条件
SELECT DNAME FROM DEPT WHERE DEPTNO=2;
SELECT dname FROM DEPT WHERE deptno>2;
(先走from确定表,再走where缩小范围,最后select输出结果)

SELECT dname FROM DEPT WHERE deptno=2 AND loc='二区';    多条件
SELECT dname FROM DEPT WHERE deptno=2 OR deptno=3;

like 模糊查询 通配符–啥都行
select * from emp where ename like ‘l%’ --以l开头的 高效,不是1开头的直接不看
select * from emp where ename like ‘%a’ --以a结束的
select * from emp where ename like ‘%a%’ --中间包含a的 低效,查得越多越慢
select * from emp where ename like ‘l__’ --l后面有两个字符的 _代表一个字符位置

null 判空
select * from emp where mgr is null --过滤字段值为空的
select * from emp where mgr is not null --过滤字段值不为空的

between and 区间范围
(是包含的关系)
SELECT * FROM emp
select * from emp where sal<3000 and sal>10000
select * from emp where sal<=3000 and sal>=10000–等效

select * from emp where sal between 3000 and 10000–等效

limit 实现翻页
select * from emp limit 2 --列出前两条
select * from emp limit 1,2 --从第二条开始,展示2条记录
select * from emp limit 0,3 --从第一条开始,展示3条记录–前三条

order by 按照指定字段排序
SELECT * FROM emp order by sal #默认升序
SELECT * FROM emp order by sal desc #降序

						英文字符--按字典排序(优先首字母)
						日期--按数字大小排
						汉字--按utf8编码表比对应数字大小(优先首字)
									int a = '总';
    								System.out.println(a);//24635
    								int b ='经';
    								System.out.println(b);//32463

#################################################

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值