当前位置: 首页 > wzjs >正文

东莞中高端网站建设中国免费网站服务器主机域名

东莞中高端网站建设,中国免费网站服务器主机域名,公司品牌vi设计是什么,cms模板下载DQL常见面试题 where 和 having 的区别 三个排序开窗函数的区别 left join 用where 筛选 和 用on筛选的区别 ON 子句:用于定义连接条件,不会丢失左表的行。 WHERE 子句:用于过滤连接后的结果集,可能会丢失左表中没有匹配的行 …

DQL常见面试题  

where 和 having 的区别


三个排序开窗函数的区别


left join 用where 筛选 和 用on筛选的区别

  • ON 子句:用于定义连接条件,不会丢失左表的行。

  • WHERE 子句:用于过滤连接后的结果集,可能会丢失左表中没有匹配的行

示例 

 

WHERE 子句在连接操作之后应用,用于过滤结果集中的行。在这个查询中,WHERE b.salary > 5000 会过滤掉所有 b.salary 小于或等于 5000 的行,包括那些 b.salaryNULL 的行(即左表中的行在右表中没有找到匹配的行)。

union 和 union all 的区别

union 

  • 去重UNION 会自动去除合并后结果集中的重复行。

  • 性能:因为需要检查重复行,所以 UNION 通常比 UNION ALL 执行得慢一些

union all 

  • 不去重UNION ALL 会保留合并后结果集中的所有行,包括重复行。

  • 性能:因为不需要检查重复行,所以 UNION ALL 通常比 UNION 执行得快。

count(*)  count(1) count(字段)的区别

  • COUNT(*):计算所有行数,包括列值为 NULL 的行。

  • COUNT(1):计算所有行数,与 COUNT(*) 类似

  • COUNT(列):计算指定列非 NULL 值的数量。

COUNT(*) 可能比 COUNT(列) 更快,因为它不需要检查列值是否为 NULL 

COUNT(1)COUNT(*) 的性能相似

 a表有3条数据,b表有5条数。a left join b 最少多少条,最多多少条

最少3条>>b表没有与a表匹配的数据

最多15条>>b表的每一条数据都能和a表匹配上,产生笛卡尔积

DDL面试题

 truncate 、 delete 、 drop的区别

1.drop删除对象,delete和truncate删除数据;

2.drop和truncate属于DDL(数据库定义语言);  delete属于属于DML(数据库操作语言);

3.TRUNCATE只能删除全部数据,DELETE可以删除全部也可以条件删除;

4.性能:  drop > TRUNCATE > DELETE;

5.数据恢复: 

TRUNCATE的数据不能回滚也不能闪回,

DELETE掉的数据可以回滚(在事务未提交的前提下), 以及闪回查询

DROP可以闪回表,可以恢复数据,但是不能回滚(因为属于DDL);

如何避免索引失效

写文章-CSDN创作中心

 什么时候使用索引

经常用于数据过滤的字段(where或having后面的字段)

经常用于表连接的字段, 

经常用于排序或分组

需要保持唯一性的字段>>建唯一索引/主键索引

经常用于范围查询的字段>>索引可以加速查询范围的定位频繁查询但是更新较少的字段>>当表中的数据发生变化(插入、更新、删除)时,索引也需要同步更新, 频繁更新会降低索引性能

 分区表类型

范围分区:适用于按时间或数值范围分布的数据,如销售记录、日志数据。

列表分区:适用于具有明确分类的数据,如部门信息、产品分类。

哈希分区/散列分区:适用于数据分布均匀的场景,如客户信息、订单数据。

复合分区/子分区:前3种分区的组合,  适用于需要多层次数据划分的场景,如销售数据按时间和区域复合分区>>范围分区+列表分区

视图和表的区别

表是实际存储数据的物理结构,而视图是基于SQL查询的虚拟表,是sql语句的映射, 不存储数据。

行列转换

oracle

多行转单行:listagg;

列转列: case when;

行转列:case when , decode, pivot;

列转行:union和unpivot

hive

列转行(一变多)>>explore爆炸函数(用于数组array或映射map)

行转列(多变一)>>collect_set函数(有去重效果); collect_list函数没有去重效果

如果不是数组, 行列转换使用case when(行转列) 和 union all (列转行)

分组的top n

即在每个分组中选择排名前N的记录

oracle

在一个临时表里面用窗口函数对数据进行分组降序排序>>select查询,用一个where过滤得到数据

连续登录

通常涉及到用户登录信息的分析, 监控用户活动、检测异常登录行为、统计用户活跃度等

以下SQL查询用于找出连续登录3天或以上天数的用户

WITH RankedLogins AS (SELECTuser_id,login_date,ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY login_date) AS rn,LAG(login_date) OVER (PARTITION BY user_id ORDER BY login_date) AS prev_login_dateFROMuser_logins
)
SELECTuser_id,MIN(login_date) AS start_date,MAX(login_date) AS end_date,COUNT(*) AS consecutive_days
FROMRankedLogins
WHERElogin_date - prev_login_date = 1
GROUP BYuser_id,start_date
HAVINGconsecutive_days >= 3;

DTL面试题

什么是事务

表示一组不可分割的操作序列,这些操作要么全部成功,要么全部失败

事务的四个基本特性(ACID属性)

原子性(Atomicity),一致性(Consistency),一致性(Consistency),一致性(Consistency)


 什么是隐式事务、什么是显示事务

隐式事务:

是指数据库系统自动管理的事务,不需要用户(即开发者)显式地声明事务的开始和结束。

增删改 (INSERT、UPDATE、DELETE) 都是隐式事务

显示事务

显式地声明事务的开始和结束,  允许开发者根据需要将多个数据库操作组合成一个事务。PL/SQL

什么是死锁,死锁怎么解决

两个或多个事务在执行过程中,因争夺资源而造成的一种相互等待的现象

解决

首先要有管理员权限,然后在 pl/sql dev 工具中打开:工具-会话窗口

找到带锁的会话,点击关掉(kill)这个会话。

pl/sql dev 工具指的是 PL/SQL Developer 

http://www.dtcms.com/wzjs/104468.html

相关文章:

  • 有做外贸个人网站营销方案怎么写模板
  • wordpress好看的模板关键词优化举例
  • 网站连接怎么做网站快速收录工具
  • 佛山做外贸网站咨询手机网站怎么优化关键词
  • 找网页设计师南宁seo优势
  • 日本做美食视频网站站长之家站长工具综合查询
  • 教育教学网站建设贵州百度seo整站优化
  • wordpress定时发布没用seo关键词优化软件官网
  • 重庆seo排名优化seo整站优化外包公司
  • 个人做同城网站赚钱吗百度关键词优化方法
  • seo技术公司项目优化seo
  • 可以做编程题的网站2021年网络营销案例
  • 企业管理公司取名字大全临沂网站seo
  • 怎样说服老板做网站促销活动推广方案
  • 卖房网站排名网站建网站建设网站
  • wordpress幻灯片宁波seo关键词优化方法
  • 有哪些网站做的比较好的百度统计怎么用
  • 江门营销型网站建设多少钱seo免费软件
  • ppt设计倒计时上海seo网站优化软件
  • iis 新建网站 没有注册类别网站seo优化推广外包
  • 上海企业建站公司排名品牌运营中心
  • 幼儿园校园网站建设情况零基础能做网络推广吗
  • 电子商务网站建设与维护李建忠百度应用
  • 公司网站后台是什么学市场营销后悔死了
  • 网站建设 新闻怎么优化
  • 做网站怎么认证微博小红书seo
  • 建设银行网站转账百度推广登录网站
  • 阿里巴巴批发网站叫什么百度人工优化
  • 徐州网站定制网站优化排名方法有哪些
  • 论坛类网站开发报价seo入门培训班