数据库
HurricanGod
这个作者很懒,什么都没留下…
展开
-
MySQL将多列转行
一年没有写过复杂SQL,今天偶然在群里看到一条面试题:将一张课程成绩表里的成绩按照用户名进行汇总。具体汇总还是用图更一目了然:于是屁颠屁颠跑去建表准备数据挑战一下,sql如下:create table t_user_score( id int unsigned primary key auto_increment, user_name varchar(16), course_name ...原创 2019-04-14 22:16:04 · 2256 阅读 · 1 评论 -
ubuntu下mysql5.7启动多数据库实例
启动Mysql多实例找到mysql的配置文件my.cnf复制mysql配置文件my.cnf创建mysql实例的文件夹并添加权限修改my.cnf配置文件用mysql_install_db初始化数据库启动mysql服务器登录Mysql3307实例再次启动mysql3307服务修改mysql中root用户登录密码开启和关闭mysql3307服务Mysql5.7创建启...原创 2018-04-08 11:02:15 · 1827 阅读 · 0 评论 -
Mysql表结构修改
mysql设置主键自增长,修改表字段允许为null原创 2017-08-13 21:26:32 · 394 阅读 · 0 评论 -
mysql表中unique约束名称的查看,添加以及删除
场景: 在Mysql建立了1个unique约束,但是并没有给这个约束命名;比如:在创建表过程中使用了下列语句website varchar(128) not null unique把website字段设置为唯一的,当website字段并不需要唯一时该怎样删除这个unique约束呢?show create table 表名; 可以查看表中建立的各种约束 示例: show create tab原创 2017-08-10 19:45:30 · 20685 阅读 · 1 评论 -
Sql Server 事务
--包含用户的帐号和钱数create table BanlAccount ( --帐号 ID int not null primary key, --转账金额 moneys money )--插入两条数据insert into BanlAccount values ('1','2000') insert into BanlAccount原创 2016-10-18 01:21:33 · 253 阅读 · 0 评论 -
Sql server创建存储过程
在数据库中假设有一张表叫login 建表代码如下:--登录信息表create table [dbo].[login] ( [Accounts] varchar (50) NOT NULL, [Passwords] varchar (16) NOT NULL, [Role] nvarchar (50) NULL, [Salt] nvarch原创 2016-10-18 01:11:39 · 658 阅读 · 0 评论 -
SQL Server里的常用语句
先来介绍一下比较实用的快捷键 在sql server中遇到不熟悉的关键字时可用光标停在在关键字处按F1可查看帮助--给数据库表添加一列属性alter table 表名 add 列名 类型 [null]--创建表给列赋默认值create table userID( id int identity(1,1) primary key, name nvarchar(3原创 2016-10-02 13:14:29 · 324 阅读 · 0 评论 -
Sql Server 游标用法
游标使用方法:--定义游标declare 游标名 Cursor for --select语句 select userID,userpwd from userMessage --打开游标,可以多次打开open 游标名 declare @UID nchar(16) declare @Pwd nchar(32) --把游标指向原创 2016-10-18 00:45:08 · 376 阅读 · 0 评论 -
Sql Server中实现分页查询
使用开窗函数over()select *from( select *,ROW_NUMBER() over(order by userID)as num from usserMessage) as Twhere T.num between 4 and 6定义变量法declare @i intset @i=4select top 2 *from student原创 2016-10-18 00:39:59 · 244 阅读 · 0 评论 -
sql server里获取向数据库插入数据后返回新插入行的主键
往数据库插入一组新元组后该任何获取插入元组的主键? 要求:所要插入的表里要有标识列.***什么是标识列?***通俗点来讲就是主键会自动编号,在插入数据时,会自增,无需人为干预,其数据类型为不带小数的数值类型,主要包括decimal、int、numeric、smallint、bigint 、tinyint如果一个表里没有标志列,执行如下查询操作时select @@IDENTITY as原创 2016-10-02 13:04:53 · 5036 阅读 · 0 评论 -
mysql group by后查询每组第n条记录和每组前n条记录(Top n问题)
最近看了关于SQL相关的面试题,对于我这种2年没写复杂SQL语句的渣渣来说实在有点脑阔疼,题目内容大概为:查询每个班级成绩最高的学生及其成绩查询每个班级成绩第二的学生及其成绩查询每个班级总分前三的学生第一个查询一看就比较简单,难就难在第2和3个查询,因为分组后没有取第n或前n条数据的函数由于是面试题,没有表结构,所以就随意脑补了一下建表代码:CREATE TABLE `t_user...原创 2019-05-08 23:59:39 · 3879 阅读 · 2 评论