mysql
码个锤子呀
这个作者很懒,什么都没留下…
展开
-
更新excel中的多条数据
需要一条一条更新="update car_policy set start_date = '"&C3&"',end_date = '"&D3&"' where policy_no = '"&B3&"';"写成相对地址,下边的数据直接复制填充炳复制就出来了,所有sql粘贴出来执行...原创 2021-03-10 21:20:38 · 98 阅读 · 0 评论 -
mysql 列转行
pk value 1 ET,AT 2 AT,BT 3 AT,DT 4 DT,CT,AT value AT BT CT DT ET SELECT DISTINCT t.id, t.role_id FROM ( SELECT a.id, t.role_id SUBSTRING_INDEX( SUBSTR.原创 2021-03-09 21:01:59 · 519 阅读 · 1 评论 -
sql注入
SQL注入攻击是黑客对数据库进行攻常用的手段之一,随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想获取的数据,这就是所谓的SQL Injection,即SQL注入。一、背景假如某高校开发了一个网课系统,要求学生选课后完成学习,数据库中有一张表course,这张表存放着每个学生的选课转载 2020-12-11 09:44:29 · 249 阅读 · 0 评论 -
查询数据是否重复(去掉要校验在数据)2020-11-16
查询重复,1、查询重复需要去掉本身,重复关键字是name ,直接传当前数据在id 排除当前id就好国select count(1) from A where A.id != id and A.name原创 2020-11-16 11:10:38 · 100 阅读 · 0 评论 -
row_number()over()使用方法
再一次排序:找出每一组中序号为一的数据 select * from(select id,name,age,salary,row_number()over(partition by id order by salary desc) rank from TEST_ROW_NUMBER_OVER t) where rank <2原创 2020-09-17 18:48:25 · 219 阅读 · 0 评论 -
group by语句查询除了分组以外的字段
解决办法:在其他字段中用聚合函数 如:select count(性别), max(姓名), max(性别),max(身高) from 表名 group by 性别--或者select count(性别), min(姓名), min(性别),min(身高) from 表名 group by 性别原创 2020-08-06 14:44:35 · 3644 阅读 · 0 评论 -
主键的唯一性和联合主键概念辨析
最近学习一点数据库的基本知识,被一个问题困惑了许久:主键是唯一的索引,那么为何一个表可以创建多个主键呢?其实“主键是唯一的索引”这话有点歧义的。举个例子,我们在表中创建了一个ID字段,自动增长,并设为主键,这个是没有问题的,因为“主键是唯一的索引”,ID自动增长保证了唯一性,所以可以。此时,我们再创建一个字段name,类型为varchar,也设置为主键,你会发现,在表的多行中你是可以填写相同的name值的,这岂不是有违“主键是唯一的索引”这句话么?所以我才说“主键是唯一的索引”是有歧义的。应该是...转载 2020-07-30 15:59:48 · 2572 阅读 · 0 评论 -
数据库分页,数据重复问题
问题描述:查询数据分页时,查询的数据有时候前一页和后一页的数据会有重复问题当SQL中ORDER BY待排序字段值相同时,系统对数据的排序可能变得随机,即一会儿这条数据在前面,一会儿这条数据在后面了 ,所以当翻页的时候我们很容易便看到了重复的数据。SQL中ORDER BY相同值结果乱序的具体原因查阅了Goole和相关资料,大概总结了这种情况的原因。其实发生这种现象是“故意”设计的。如果没有指定ORDER BY语句,则 MySQL (或任何RDBMS)不保证以特定顺序返回结果。 有些人原创 2020-07-30 15:33:31 · 900 阅读 · 0 评论 -
case when 使用小结
1、等值转换2、范围转换3、行转列1、等值转换 性别转换selectname as '名字',(case sex when 0 then '女' else '男' end) as '性别'from test.student;2、范围转换有的时候,也会遇到这种情况,按照用户成绩显示优(90+)、良(80-90)、及格(60-80)、未及格(60-)selectname as '姓名',(case score when score>=90 then '优' ...原创 2020-07-28 16:42:41 · 382 阅读 · 0 评论 -
mysql 不要用utf8,
utf8是一个专有字符集,他带来了新的问题一直么有解决,要使用utfmb原创 2020-06-26 09:15:47 · 88 阅读 · 0 评论