个人总结mysql常用语句
Mysql常用语句
SELECT[ALL|DISTINCT|DISTINCTROW|TOP]
{*|talbe.*|[table.]field1[AS alias1][,[table.]field2[AS alias2][,…]]}
FROM tableexpression[,…][IN externaldatabase]
[WHERE…]
[GROUP BY…]
[HAVING…]
[ORDER BY…]
[WITH OWNERACCESS OPTION]
-- 顺序不能有错
-- 表和字段可以取别名
创建表
-
create table xxx( 字段名1 类型[] 约束, 字段名2 类型[] 约束, 字段名3 类型[] 约束, ... 最后一行不用加',' key 外键约束名 (字段民) ) -
create table 新表 select * from 被复制的表 采用这种方式只能复制数据,不能复制其相关约束,例如主键等约束
删除表
1.delete
删除某几行
delete from 表名 [条件]
2.drop
删除表数据和结构
alter table 表名 drop 字段名
3.truncate
只删除所有数据,不删除结构
truncate table 表名称
添加外键约束
1,sql语句创建表的同时添加外键约束
CREATE TABLE tb_UserAndRole --用户角色表
(
ID INT PRIMARY KEY IDENTITY(1,1),
UserID INT NOT NULL,--用户ID
RoleID INT NOT NULL,--角色ID
foreign key(UserID) references tb_Users(ID)--tb_Users表的ID作为tb_UserAndRole表的外键
)
2、添加外键约束(关联字段要用括号括起来)
ALTER TABLE 从表 ADD CONSTRAINT 约束名 FOREIGN KEY (关联字段) references 主表(关联字段);
例如:
ALTER TABLE tb_UserAndRole ADD CONSTRAINT FK__tb_UandR_Role FOREIGN KEY (RoleID) references tb_Role(ID);
Insert 插入语句
insert into 表名 (字段一,子段2) values (值一,值二),(值一,值二)
insert into student(id,name) values (1,'李明'),(2,'李白')
字段可以省略但是后面的值必须要一一对应
alter添加列
alter table 表名 add column 新字段
例:
alter table stuednt add column sex char(1) not null comment'性别'
alter修改列
alter table students change gender 性别 varchar(4);
alter table students change column gender 性别 varchar(4);
两种方式皆可
alter table 表名 change ( column)原列名 新列名 列类型;
alte删除列
alter table students drop column 列名;
update修改语句
update student set name="yhq" where id='1'
update 表名 set 字段=新名字 where 字段=条件
多个属性用,隔开
update 表名 set 字段一=' ', 字段二=' ' where 条件
条件where
between .. and .. 双闭区间
多个条件用 and
拼接
SELECT CONCAT('姓名:',Sname) AS 新名字 FROM student
去重
select distinct '字段' from table
like结合%
select '字段' from table where 字段 Like '刘%' 查询性刘的同学
select '字段' from table where 字段 Like '刘_' 查询刘后面一个字的
查询 年龄在 11,12,13的学生
select '字段' from table where age in(11,12,13)
in中不能使用%,_等类似查询的符号
联合查询
select (字段1,字段2...) from 表一 INNER join 表二 on 表1.字段=表2.字段
查询字段时,如两个表中都有相同的字段,差需标记清楚是哪个表的字段,例如
select student.id from student inner join grade on student.id=grade.id
左联合查询
select (字段1,字段2...) from 表一 left join 表二 on 表1.字段=表2.字段
表一的所有属性都会显示,无论是否能在表二中找到对应的
右联合查询right
select (字段1,字段2...) from 表一 right join 表二 on 表1.字段=表2.字段
表二的所有属性都会显示,无论是否能在表一中找到对应的
自连接
本质是将一个表拆分成两个表
原表
select a.Sname as '父类学科',b.Sname as '子类学科' from
subject as a ,subject as b where a.subjectid=b.pid
查询结果
分页(limit)和排序(order by)
在select语句最后面加入即可
order by 字段 asc 升序
order by 字段 desc 降序
LimIt 当前页 ,页面的大小
limit 1,5 每页5条数据 从第1条数据开始显示
md5加密
-- 在插入的时候加密
insert into 表名 values (值一,值二,MD5(要加密的值))
在select语句最后面加入即可
order by 字段 asc 升序
order by 字段 desc 降序
LimIt 当前页 ,页面的大小
limit 1,5 每页5条数据 从第1条数据开始显示
md5加密
-- 在插入的时候加密
insert into 表名 values (值一,值二,MD5(要加密的值))
智能推荐
MySQL常用语法总结
0x01启动篇 一定要用管理员身份运行cmd 0x02登录MySQL 方法一:明文密码方式登录数据库 其中-u是mysql的参数,表示用户名。-u后面写数据库的用户名; -p是mysql的参数,表示密码。-p后面写数据库root对应的密码; 盲猜,-u是user(用户)的缩写,-p(密码)是password的缩写 方法二:隐藏密码方式登录数据库 ...
python常用语句
下面的语句是我工作中常用到的一些语句使用,可能比较简单,部分参考了网上的代码,just for note 零、参考链接 https://blog.csdn.net/yingshukun/article/details/53470424 https://www.runoob.com/python/python-files-io.html 一、操作excel表格 二、操作word中的表格 三、获取文件...
Sql常用语句
基础语句 select、update、insert into、delete 对应查、改、增、删 其他基础语句 distinct、and&or、order by、group by、like、limit、top、as、between and、in where、group by、order by、having 书写顺序和执行顺序 表连接 in...
sql常用语句
视频 视频课件 目录 数据库操作 登陆数据库 退出数据库 显示时间 显示版本 创建数据库 查看创建数据库的语句 删除数据库 使用数据库 查看当前使用数据库 数据表的操作 查看数据表 创建数据表 约束中符号默认为有符号 查看数据表的结构 数据表中插入数据 修改表结构 查看表的创建语句 1.数据创建 创建数据库 查看数据库 使用数据库 显示当前使用那个数据库 创建一个数据表 存0 1时使用bit 就行...
layer弹出层的简单使用
一、layer的icon样式 以上样式测试代码: [javascript] view plain copy layer.confirm(‘icon测试’, {icon: 1, title:‘提示’}, function(index){ //do...
猜你喜欢
Nginx 解析漏洞复现
漏洞环境搭建 时间有限,漏洞环境搭建教程简单,在此不再赘述。 具体项目地址:https://github.com/vulhub/vulhub 搭建教程及说明可参考:https://vulhub.org/ -还是挺简单的- Nginx 解析漏洞复现步骤如下: 靶机环境 由此可知,该漏洞与Nginx、php版本无关,属于用户配置不当造成的解析漏洞。 启动环境 复现 1). 访问 http://IP/u...
ArrayList 源码解析(JDK1.7)
ArrayList 源码解析(JDK1.7) ps: 我思考了一下…想要不要发这篇博客… 感觉作为一个初学者…发这种源码解析… 尤其当做学习记录这样的东西来做…感觉没有任何的重点可言… 不过思考了一下…反正估计也没人看 (狗头) 就发了吧 纯属个人 … emmm 萌新的学习经历- - 大...
GDB随笔(一)
在编译的时候必须加上-g,生成的目标文件才能够进行调试。(我们调试的是目标文件) -g选项的作用是在目标文件中加入源代码的信息,保证gdb能找到源文件。 -o选项,相当于指定一个文件作为目标文件。 可以做一个实验:由main.c生成main(-g),然后将m**在目标文件中加入源代码的信息,保证gdb能找到源文件。ain.c改成其他名字,然后调用gdb main,就会发现对gdb使用命令(list...
tensorboard报No dashboards are active for the current data set
遇到这个错误,通过两步可以解决这个问题 一、检查所指定的目录下是否存在event文件 类似于上面箭头所指的文件,并不需要所指定的目录为event的上一级目录,比如像下面这种情况 在启动tensorboard的时候,指定到log目录就行了,命令如下 二、确定logdir的路径是否正确 我们在确定event文件确实存在之后,还需要确定logdir的路径是否正确,因为logdir的路径中不能包含中文、空...
struts2--动态方法调用的三种方式
一般情况下,我们是通过实现action中execute方法来实现请求处理,这样子一个action中就只能写一个方法,当我需要实现很多方法的时候写多个action显然是很不合理的,因此就需要使用动态调用来实现。 方式一:指定method属性 也就是说通过在struts.xml文件中通过配置action标签的method属性来设置即可。 但是这个方法有一个缺陷,当一个action中有很多方法的时候就需...
