学习周报-20221211

本文介绍CentOS系统运行级别修改方法、root密码重置流程、文件时间属性管理技巧、时区设置注意事项及局域网内yum源配置步骤。

一 centos7修改系统运行级别的方法

方法一

1)重启系统

reboot

2)按任意键中断启动加载的倒计时

在这里插入图片描述

3)将光标移动到要编辑的项目,并按 e 进行编辑
在这里插入图片描述

4)找到Linux16所在的行,在行尾添加内容,并ctrl+x提交

在这里插入图片描述

方法二

1)设置系统默认运行级别

systemctl set-default multi-user.target

2)重启系统

reboot

二 修改(忘记)centos系统的root密码

1)重启系统

reboot

2)按任意键中断启动加载的倒计时

在这里插入图片描述

3)将光标移动到要编辑的项目,并按 e 进行编辑
在这里插入图片描述

4)找到Linux16所在的行,在行尾添加内容,并ctrl+x提交

在这里插入图片描述

5)以读写形式重新挂载 /sysroot

命令 mount -o remount,rw /sysroot

在这里插入图片描述

6)切换为chroot存放位置

命令 chroot /sysroot

在这里插入图片描述

7)设置新的root密码

在这里插入图片描述
8)连续两次exit,重新启动系统

请添加图片描述

三 文件的atime、mtime、ctime比较

1 定义

缩写全称释义
atimeAccess Time文件最后一次访问(读取或执行)的时间
mtimeModify Time文件内容最后一次改变的时间
ctimeChange Time文件属性最后一次改变(包括权限、链接个数等)的时间

2 mtime和ctime的比较

mtime指的是文件内容最后一次被修改后的时间。
比如用echo将内容重定向至文件,或者用vim编辑文件内容时,时间会改变。

ctime指的是文件的元数据最后一次被修改的时间,也就是文件的属性信息。
比如更改文件的inode、文件的链接数、文件的权限、文件的属主和属组用户信息等。

需要注意的是,当文件的内容被修改时,首先block会必然改变,因为文件的大小与之前会不一致;其次inode也会随之变化,文件变得不同,属性信息也会发生改变;而inode的变化也会导致ctime的变化,因为元数据发生了改变。

简单总结就是,mtime改变,ctime就一定会改变;
ctime改变,mtime却不一定改变。

3 atime在访问文件后并不一定会修改

使用 ext3 文件系统的时候,如果在使用 mount 命令进行挂载时使用了 noatime 参数,那么就不会更新 atime 的信息。

事实上,无论读取文件,还是复制文件,都需要访问源文件,都会进行频繁的写操作,并且增加了磁盘的IO消耗,会相当消耗系统资源。如果完全禁止atime的修改,则会破坏 POSIX 兼容性。

针对这个问题,Linux 内核 2.6.20 开始为mount引入了一个–relatime选项,并从 2.6.30 开始这一选项默认是开启的。当开启了–relatime选项后,只有当 atime < mtimeatime < ctime 或文件的上次访问时间超过 1 天,才会去更新 atime。

上述设置,一方面大幅度减少atime写操作对系统资源的消耗,另一方面降低了对备份软件的影响(某些备份软件需要通过对比 atime、mtime、ctime 的时间来判断是否需要进行备份)。

4 相关操作命令对三个时间的影响

表示时间发生改变,用×表示不发生改变

命令atimemtimectime
cat×××
cp×××
mv×
chmod××
chown××
touch
>
>>
vi、vim(不修改)××
vi、vim(修改)
执行可执行文件××

四 Linux时区设置中的一些问题

Linux时钟会有两种区分,一种是 UTC(Universal Time Coordinated),也就是世界协调时间,在地理上表示为0时区;另一种使用 LT ,也就是地方时区,比如我国一般使用 Asia\shanghai ,上海的东八区。

如果想要禁用 UTC 并且使用地方时,可以修改时间配置文件。

vi /etc/sysconfig/clock   
ZONE="Asia/Shanghai"

#设置为false,硬件时钟不于utc时间一致
UTC=false                   

或者使用一条命令timedatectl set-timezone Asia/Shanghai更改时区

修改时区后,再进行时间同步,这里一般会使用定时任务crontab命令,比如每隔一小时执行一次时间同步任务。

crontab -e
# 每天的整点时间进行时间同步
0 * * * * ntpdate 0.asia.pool.ntp.org &> /dev/null

五 Linux局域网内配置yum源

1) 需求

公司集群架构中,内部服务器出于安全考虑,不允许访问外网,无法直接从外网的开源镜像中直接yum安装软件。
因此需要将yum源搭建在本地的一台服务器上,其他服务器通过内网访问该服务器,即可yum安装软件。

服务端IP:10.0.0.10
在本地安装centos7的镜像,作为其他服务器的yum镜像源。

客户端IP:10.0.0.11
通过修改/etc/yum.repos.d/Centos-Base.repo,将服务端设置为新的yum源。

2 )搭建环境准备

服务端主机名:master
客户端主机名:node1

关闭两台服务器的防火墙:

systemctl stop fireewalld
systemctl disable fireewalld
systemctl status fireewalld

将SELINUX安全策略关闭:

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 
setenforce 0
getenforce

3 )服务端

1 创建镜像存放目录与挂载目录

首先创建一个镜像文件的存放目录

mkdir -p /yum

再创建一个挂载点

mkdir -p /mnt/cdrom

2 上传centos7镜像

将镜像文件上传至/yum目录下。

由于镜像文件很大,如果传输速度很慢,可以在 Windows 上安装 xftp 软件,然后打开创建会话。

在这里插入图片描述

具体的安装步骤此处不作详细讲解,但注意选择正确的协议和端口号,否则无法连接。

接着就可以直接拖动文件,在Linux和Windows间相互传输。

3 对镜像文件进行挂载

首先查看笔者上传的 centos7 的镜像文件。

[root@master ~]# ll /yum/
total 4389888
-rw-r--r-- 1 root root 4495245312 Dec  9 09:39 rhel-server-7.6-x86_64-dvd.iso

其次输入挂载命令。

[root@master ~]# mount -o loop /yum/rhel-server-7.6-x86_64-dvd.iso /mnt/cdrom
mount: /dev/loop0 is write-protected, mounting read-only

最后检查一下,挂载是否成功。

[root@master yum.repos.d]# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   19G  8.7G  9.7G  48% /
devtmpfs               470M     0  470M   0% /dev
tmpfs                  487M     0  487M   0% /dev/shm
tmpfs                  487M  8.0M  479M   2% /run
tmpfs                  487M     0  487M   0% /sys/fs/cgroup
/dev/sda1              197M  143M   55M  73% /boot
tmpfs                   98M     0   98M   0% /run/user/0
/dev/loop0             4.2G  4.2G     0 100% /mnt/cdrom

4 配置本地yum源

首先备份原有的镜像文件。

[root@master ~]# cd /etc/yum.repos.d/
[root@master yum.repos.d]# ls
CentOS-Base.repo  epel.repo  redhat.repo
[root@master yum.repos.d]# mkdir bak
[root@master yum.repos.d]# mv *.repo bak/
[root@master yum.repos.d]# ll
total 0
drwxr-xr-x 2 root root 66 Dec  9 15:30 bak

然后配置本地的yum源。

[root@master yum.repos.d]# cat base.repo 
[base]
name=centos base
baseurl=file:///mnt/cdrom
gpgcheck=0
enabled=1

此处的baseurl后面的内容是file://+挂载点的绝对路径
参数gpgcheck=0是在 yum 安装时不检查数字签名是否被纂改。
参数enabled=1是启用此 yum 配置。

5 对挂载点建立软链接

[root@master yum.repos.d]# mkdir -p /var/www/html/centos
[root@master yum.repos.d]# ln -s /mnt/cdrom/ /var/www/html/centos

6 安装http服务

yum install -y httpd
systemctl start httpd
systemctl enable httpd
systemctl status httpd

7 浏览器验证http服务是否正常启动

在本机浏览器的URL栏里输入自己的IP,查看是否启动了Apache服务。

在这里插入图片描述

然后以自己的IP/centos格式输入,能否打开镜像文件。

在这里插入图片描述

说明 http 服务正常运行。

另外,我们清理一下本地的缓存。

yum clean all
yum makecache

然后查看一下本地的yum源。

[root@master cdrom]# yum repolist
Loaded plugins: langpacks, product-id, search-disabled-repos
repo id                                                    repo name                                                      status
base                                                       centos base                                                    5,152
repolist: 5,152

4) 客户端

1 修改yum配置文件

先备份相关的镜像文件。

[root@node1 yum.repos.d]# mkdir bak
[root@node1 yum.repos.d]# mv *.repo bak/
[root@node1 yum.repos.d]# ll
total 0
drwxr-xr-x 2 root root 66 Dec  9 15:52 bak

然后编写yum配置文件。

[root@node1 yum.repos.d]# cat base.repo 
[base]
name=base yum
baseurl=http://10.0.0.10/centos
gpgcheck=0
enabled=1

注意,此处的baseurl后面的IP是配置yum源的服务器IP,通过局域网,我们可以访问该页面。

2 查看yum源

首先清理缓存,再查看镜像配置文件。

yum clean all
yum makecache
yum repolist

通过执行命令,结果如下:

[root@node1 yum.repos.d]# yum repolist
Loaded plugins: langpacks, product-id, search-disabled-repos
repo id                                                     repo name                                                     status
base                                                        base yum                                                      5,152
repolist: 5,152

通过两个repolist: 5,152数字的比较,我们可以发现两台主机的yum源配置是相同的。

WITH alldata AS( SELECT JOB_NAME ,JOB_ID ,FAB_ID ,AREA_ID ,REAL_POINT_COUNT ,ppk_value ,report_date ,CASE WHEN area_id='C-测试' THEN '测试厂' WHEN job_name LIKE '%3.1%' OR job_name LIKE '%3.2%' THEN '制造三厂' WHEN job_name LIKE '%2.1%' OR job_name LIKE '%2.2%' THEN '制造二厂' ELSE '制造一厂' END AS factory ,CASE WHEN JOB_NAME LIKE '%AE%' THEN '车规' ELSE '非车规' END AS CAR_SPEC --,TO_CHAR(report_date , 'IW') AS iso_week_number ,TO_CHAR(report_date , 'YYYYMM') AS iso_month_number FROM REP_CPK_DETAIL_NONRT where REPORT_NAME IN ('成都封测质量关注周报-测试-周二','成都封测质量关注周报-测试-周六','成都封测质量关注周报-测试-周日','成都封测质量关注周报-测试-周三' ,'成都封测质量关注周报-测试-周四','成都封测质量关注周报-测试-周五','成都封测质量关注周报-测试-周一','成都封测质量关注周报-成型-周二' ,'成都封测质量关注周报-成型-周六','成都封测质量关注周报-成型-周日','成都封测质量关注周报-成型-周三','成都封测质量关注周报-成型-周四' ,'成都封测质量关注周报-成型-周五','成都封测质量关注周报-成型-周一','成都封测质量关注周报-电镀-周二','成都封测质量关注周报-电镀-周六' ,'成都封测质量关注周报-电镀-周日','成都封测质量关注周报-电镀-周三','成都封测质量关注周报-电镀-周四','成都封测质量关注周报-电镀-周五' ,'成都封测质量关注周报-电镀-周一','成都封测质量关注周报-划片-周二','成都封测质量关注周报-划片-周六','成都封测质量关注周报-划片-周日' ,'成都封测质量关注周报-划片-周三','成都封测质量关注周报-划片-周四','成都封测质量关注周报-划片-周五','成都封测质量关注周报-划片-周一' ,'成都封测质量关注周报-键合1-周二','成都封测质量关注周报-键合1-周六','成都封测质量关注周报-键合1-周日','成都封测质量关注周报-键合1-周三' ,'成都封测质量关注周报-键合1-周四','成都封测质量关注周报-键合1-周五','成都封测质量关注周报-键合1-周一','成都封测质量关注周报-键合2-周二' ,'成都封测质量关注周报-键合2-周六','成都封测质量关注周报-键合2-周日','成都封测质量关注周报-键合2-周三','成都封测质量关注周报-键合2-周四' ,'成都封测质量关注周报-键合2-周五','成都封测质量关注周报-键合2-周一','成都封测质量关注周报-键合3-周二','成都封测质量关注周报-键合3-周六' ,'成都封测质量关注周报-键合3-周日','成都封测质量关注周报-键合3-周三','成都封测质量关注周报-键合3-周四','成都封测质量关注周报-键合3-周五' ,'成都封测质量关注周报-键合3-周一','成都封测质量关注周报-键合4-周二','成都封测质量关注周报-键合4-周六','成都封测质量关注周报-键合4-周日' ,'成都封测质量关注周报-键合4-周三','成都封测质量关注周报-键合4-周四','成都封测质量关注周报-键合4-周五','成都封测质量关注周报-键合4-周一' ,'成都封测质量关注周报-键合5-周二','成都封测质量关注周报-键合5-周六','成都封测质量关注周报-键合5-周日','成都封测质量关注周报-键合5-周三' ,'成都封测质量关注周报-键合5-周四','成都封测质量关注周报-键合5-周五','成都封测质量关注周报-键合5-周一','成都封测质量关注周报-键合6-周二' ,'成都封测质量关注周报-键合6-周六','成都封测质量关注周报-键合6-周日','成都封测质量关注周报-键合6-周三','成都封测质量关注周报-键合6-周四' ,'成都封测质量关注周报-键合6-周五','成都封测质量关注周报-键合6-周一','成都封测质量关注周报-键合7-周二','成都封测质量关注周报-键合7-周六' ,'成都封测质量关注周报-键合7-周日','成都封测质量关注周报-键合7-周三','成都封测质量关注周报-键合7-周四','成都封测质量关注周报-键合7-周五' ,'成都封测质量关注周报-键合7-周一','成都封测质量关注周报-键合8-周二','成都封测质量关注周报-键合8-周六','成都封测质量关注周报-键合8-周日' ,'成都封测质量关注周报-键合8-周三','成都封测质量关注周报-键合8-周四','成都封测质量关注周报-键合8-周五','成都封测质量关注周报-键合8-周一' ,'成都封测质量关注周报-塑封-周二','成都封测质量关注周报-塑封-周六','成都封测质量关注周报-塑封-周日','成都封测质量关注周报-塑封-周三' ,'成都封测质量关注周报-塑封-周四','成都封测质量关注周报-塑封-周五','成都封测质量关注周报-塑封-周一','成都封测质量关注周报-装片1-周二' ,'成都封测质量关注周报-装片1-周六','成都封测质量关注周报-装片1-周日','成都封测质量关注周报-装片1-周三','成都封测质量关注周报-装片1-周四' ,'成都封测质量关注周报-装片1-周五','成都封测质量关注周报-装片1-周一','成都封测质量关注周报-装片2-周二','成都封测质量关注周报-装片2-周六' ,'成都封测质量关注周报-装片2-周日','成都封测质量关注周报-装片2-周三','成都封测质量关注周报-装片2-周四','成都封测质量关注周报-装片2-周五' ,'成都封测质量关注周报-装片2-周一','成都封测质量关注周报-装片3-周二','成都封测质量关注周报-装片3-周六','成都封测质量关注周报-装片3-周日' ,'成都封测质量关注周报-装片3-周三','成都封测质量关注周报-装片3-周四','成都封测质量关注周报-装片3-周五','成都封测质量关注周报-装片3-周一' ,'成都封测质量关注周报-装片4-周二','成都封测质量关注周报-装片4-周六','成都封测质量关注周报-装片4-周日','成都封测质量关注周报-装片4-周三' ,'成都封测质量关注周报-装片4-周四','成都封测质量关注周报-装片4-周五','成都封测质量关注周报-装片4-周一') AND JOB_ID NOT IN ('72054' ,'72055' ,'72065' ,'73425' ,'73426' ,'73427' ,'73428' ,'73522' ,'73953' ,'73954' ,'74134' ,'74135' ,'74538' ,'74539' ,'74544' ,'74545' ,'74546' ,'74547' ,'74576' ,'74577' ,'74578' ,'74579' ,'74653' ,'74654' ,'74788' ,'74789' ,'74818' ,'74929' ,'74940' ,'40057' ,'40061' ,'44993' ,'51741' ,'64872' ,'69099' ,'69102' ,'69105' ,'70360' ,'70364' ,'70368' ,'71543' ,'71814' ,'71819' ,'72010' ,'72656' ,'72657' ,'72658' ,'72662' ,'72663' ,'72668' ,'72672' ,'72677' ,'73237' ,'73272' ,'73277' ,'74099' ,'74104' ,'74107' ,'74108' ,'74112' ,'74508' ,'74588' ,'74684' ,'74734' ,'74752' ,'74756' ,'74917' ,'75185' ,'75204' ,'75206' ,'75596' ,'75772' ,'75773' ,'75774' ,'40054' ,'40058' ,'40059' ,'44990' ,'44991' ,'51739' ,'57129' ,'64869' ,'64870' ,'69096' ,'69097' ,'69100' ,'69103' ,'70358' ,'70361' ,'70362' ,'70365' ,'71541' ,'71811' ,'71812' ,'71816' ,'71817' ,'72654' ,'72655' ,'72660' ,'72661' ,'72665' ,'72666' ,'72669' ,'72670' ,'72673' ,'72674' ,'73234' ,'73270' ,'73271' ,'73274' ,'73275' ,'74101' ,'74102' ,'74105' ,'74109' ,'74110' ,'74518' ,'74519' ,'74585' ,'74681' ,'74682' ,'74731' ,'74732' ,'74749' ,'74750' ,'74753' ,'74754' ,'75182' ,'75183' ,'75202' ,'75203' ,'75593' ,'75770' ,'75771' ,'40056' ,'40060' ,'44992' ,'45806' ,'51740' ,'57130' ,'64871' ,'69098' ,'69101' ,'69104' ,'70359' ,'70363' ,'70366' ,'71542' ,'71815' ,'71818' ,'71848' ,'71872' ,'71892' ,'72305' ,'72308' ,'72659' ,'72664' ,'72667' ,'72671' ,'72676' ,'73235' ,'73273' ,'73276' ,'74103' ,'74106' ,'74111' ,'74124' ,'74507' ,'74586' ,'74683' ,'74733' ,'74751' ,'74755' ,'75184' ,'75207' ,'75594' ,'75686' ,'75793' ,'49336' ,'49337' ,'49338' ,'70369' ,'71556' ,'71849' ,'71870' ,'71871' ,'71893' ,'71899' ,'72304' ,'72307' ,'72314' ,'72315' ,'73238' ,'74100' ,'74589' ,'75597' ,'75684' ,'75685' ,'26121' ,'26122' ,'26123' ,'26131' ,'26134' ,'38885' ,'38891' ,'43117' ,'45979' ,'48317' ,'49736' ,'49740' ,'56456' ,'56457' ,'58088' ,'58224' ,'58231' ,'58234' ,'62430' ,'62433' ,'62436' ,'62443' ,'63944' ,'63951' ,'63955' ,'63957' ,'64664' ,'65653' ,'65801' ,'65804' ,'65807' ,'65816' ,'65819' ,'67182' ,'67185' ,'67354' ,'67361' ,'67707' ,'68703' ,'69054' ,'69057' ,'69060' ,'69392' ,'71809' ,'71827' ,'71830' ,'71833' ,'71836' ,'71839' ,'71865' ,'72271' ,'72279' ,'72287' ,'72296' ,'72299' ,'72302' ,'72313' ,'72316' ,'72317' ,'72362' ,'72384' ,'72855' ,'72924' ,'74449' ,'74452' ,'74455' ,'74861' ,'74970' ,'74973' ,'74976' ,'75431' ,'75432' ,'75879' ,'75888' ,'75895' ,'75932' ,'75935' ,'75938' ,'61122' ,'61123' ,'61124' ,'61125' ,'61195' ,'61196' ,'61197' ,'61198' ,'61199' ,'61200' ,'61201' ,'61202' ,'61203' ,'61204' ,'61205' ,'61206' ,'61207' ,'61208' ,'61209' ,'61210' ,'61211' ,'61212' ,'61213' ,'61214' ,'61215' ,'61216' ,'61217' ,'61218' ,'61219' ,'61249' ,'61250' ,'61251' ,'61252' ,'72971' ,'72972' ,'72973' ,'73612' ,'73630' ,'73631' ,'73691' ,'73692' ,'73693' ,'73694' ,'73695' ,'73696' ,'73904' ,'73905' ,'73986' ,'73987' ,'74015' ,'74016' ,'74017' ,'74018' ,'74019' ,'74775' ,'75008' ,'75009' ,'75645' ,'75357' ,'75358' ,'75602' ,'75603' ,'75604' ,'75605' ,'75650' ,'75651' ,'75652' ,'75653' ,'75654' ,'76205' ,'76206' ,'76207' ,'76208' ,'76209' ,'73298' ,'73299' ,'73300' ,'74712' ,'73357' ,'73358' ,'73359' ,'73360' ,'73361' ,'73362' ,'73699' ,'73700' ,'73701' ,'73702' ,'73703' ,'73704' ,'73717' ,'73718' ,'73719' ,'73720' ,'73721' ,'73722' ,'73960' ,'73961' ,'73962' ,'73963' ,'73964' ,'73965' ,'73988' ,'73989' ,'73990' ,'73991' ,'73992' ,'73993' ,'74232' ,'74233' ,'74234' ,'74231' ,'74235' ,'74236' ,'74237' ,'74238' ,'74239' ,'74240' ,'74241' ,'74242' ,'74243' ,'74244' ,'74245' ,'74246' ,'74249' ,'74248' ,'74250' ,'74251' ,'74252' ,'74253' ,'74254' ,'74255' ,'74256' ,'74257' ,'74258' ,'74259' ,'74260' ,'74261' ,'75266' ,'75267' ,'75268' ,'75269' ,'75270' ,'75271' ,'75272' ,'75273' ,'75339' ,'75340' ,'75341' ,'75342' ,'75343' ,'75344' ,'75345' ,'75346' ,'75347' ,'75348' ,'75349' ,'75350' ,'75351' ,'75352' ,'75353' ,'75354' ,'75355' ,'75356' ,'72645' ,'72646' ,'72647' ,'72648' ,'73239' ,'73249' ,'73403' ,'73409' ,'73408' ,'73414' ,'73307' ,'73308' ,'72649' ,'72650' ,'72651' ,'72652' ,'73243' ,'73244' ,'73404' ,'73410' ,'73305' ,'73306' ,'73407' ,'73413' ,'72684' ,'72685' ,'72984' ,'72985' ,'72986' ,'72987' ,'72988' ,'72989' ,'72990' ,'72991' ,'73245' ,'73246' ,'73405' ,'73411' ,'73406' ,'73412' ,'73301' ,'73302' ,'72992' ,'72993' ,'72994' ,'72995' ,'72996' ,'72997' ,'72998' ,'72999' ,'73000' ,'73001' ,'73002' ,'73003' ,'73247' ,'73248' ,'73296' ,'73297' ,'75447' ,'75448' ,'75449' ,'75450' ,'73367' ,'73368' ,'73369' ,'73697' ,'73698' ,'73705' ,'73706' ,'73373' ,'73370' ,'73372' ,'73375' ,'61121' ,'61193' ,'61194' ,'72140' ,'72183' ,'72430' ,'73754' ,'76731' ,'72021' ,'72039' ,'72041' ,'72043' ,'72045' ,'72056' ,'72058' ,'72062' ,'72064' ,'72206' ,'73521' ,'73523' ,'73948' ,'74321' ,'74322' ,'74323' ,'74324' ,'74446' ,'74492' ,'74536' ,'74541' ,'74616' ,'74646' ,'74648' ,'74650' ,'74652' ,'74656' ,'74658' ,'74660' ,'74708' ,'74710' ,'74735' ,'74744' ,'74746' ,'74748' ,'74817' ,'74819' ,'74839' ,'74886' ,'74903' ,'74927' ,'74942' ,'74951' ,'75161' ,'75166' ,'75628' ,'75674' ,'75678' ,'75929' ,'75958' ,'75982' ,'76226' ,'76228' ,'76230' ,'76235' ,'76237' ,'76705' ,'76724' ,'76737' ,'76820' ,'76846' ,'76860' ,'77062' ,'72020' ,'72026' ,'72040' ,'72042' ,'72044' ,'72057' ,'72061' ,'72063' ,'72067' ,'72205' ,'73520' ,'73946' ,'74317' ,'74318' ,'74319' ,'74320' ,'74445' ,'74491' ,'74535' ,'74540' ,'74615' ,'74645' ,'74647' ,'74649' ,'74651' ,'74655' ,'74657' ,'74659' ,'74709' ,'74711' ,'74736' ,'74743' ,'74745' ,'74747' ,'74816' ,'74838' ,'74885' ,'74904' ,'74926' ,'74928' ,'74939' ,'74941' ,'74952' ,'75165' ,'75629' ,'75673' ,'75677' ,'75928' ,'75957' ,'75981' ,'76225' ,'76227' ,'76229' ,'76236' ,'76238' ,'76704' ,'76723' ,'76736' ,'76821' ,'76845' ,'76859' ,'77061' ) AND REPORT_DATE <TO_DATE(TO_CHAR(SYSDATE, 'YYYY-MM-DD') , 'YYYY-MM-DD') AND REPORT_DATE >= TO_DATE(TO_CHAR(SYSDATE, 'YYYY') || '-01-01', 'YYYY-MM-DD') ) ,enddata AS ( SELECT a.* ,CASE WHEN CAR_SPEC = '车规' THEN CASE WHEN ppk_value > 1.67 THEN 'CPK>1.67' ELSE 'CPK<1.67' END ELSE CASE WHEN ppk_value > 1.33 THEN 'CPK>1.33' ELSE 'CPK<1.33' END END AS is_ok FROM alldata a -- ${if(len(factory) > 0,"WHERE factory ='"+factory+"'","")} ) --月常规 ,month_data as( SELECT factory,area_id,car_spec ,is_ok,iso_month_number, count(*) AS countd FROM enddata GROUP BY factory,area_id,car_spec,is_ok ,iso_month_number ) --月汇总all ,month_data_count as( SELECT factory,area_id,'汇总' AS car_spec ,'CPK统计总数' AS is_ok ,'月' AS flagcol, sum(countd) AS countd,iso_month_number FROM month_data GROUP BY factory,area_id,iso_month_number UNION SELECT factory,area_id,'汇总' AS car_spec ,'CPK不达标个数' AS is_ok ,'月' AS flagcol, sum(countd) AS countd,iso_month_number FROM month_data WHERE is_ok = 'CPK<1.67' OR is_ok='CPK<1.33' GROUP BY factory,area_id,iso_month_number ) SELECT factory,area_id ,car_spec,is_ok,countd ,iso_month_number FROM month_data_count UNION SELECT factory,area_id ,car_spec,is_ok,countd ,iso_month_number FROM month_data 优化SQL
09-20
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值