华为手机配置显示返回键

使用华为Honor V8习惯了Android屏幕最下方的三个操作按键(返回/Home/列表),三个按键所在的位置被称之为"导航栏"。

最近换了华为Honor 30,想要点返回键时,却发现手机屏幕上没有返回键。手势操作非常不方便,经常误操作。而且有些界面适配的很不好,界面上没有设置回退功能。当缺少系统层面的返回按键的时候,只能强制退出应用。

其实这个返回键是在导航键里,需要设置才会显示。下面几个步骤就教你如何设置返回键:

继续阅读华为手机配置显示返回键

3.5寸硬盘参数表-PMR/SMR/TDMR-2018-10-24

几个列项的说明
Recording - HDD写入技术
Capacity - HDD容量
Sector - 逻辑扇区大小, 表格里只包含了512e和4Kn
Disk - 碟片数
TB/Platter - 单碟TB大小
Helium - 是否充氦
PWR IDLE - 待机功耗瓦数
PWR TYPC - 典型运行功耗瓦数
PWR PEAK - 峰值功耗瓦数
Workload - 工作负荷 (TB/年)
UBER - 不可恢复比特误码率, 14=10^14内1个bit错误
L/UL- 磁头加载/卸载循环次数, 单位是千, 所以300=300,000次
AFR - 年化故障率
POH - 通电小时数/年
MTBF - 平均故障间隔小时数, 单位是百万, 所以0.75=750,000小时, Toshiba的数值为MTTF, 跟MTBF有所不同
Warranty - 质保年数

3.5''+SATA+HDD+Database+2018-10-24+(by+jerrytsao).xlsx

Size Recording MFG Series STD Model Capacity (TB) Disk RPM Cache (MB)
3.5'' SMR Seagate Archive ST5000AS0011 5 4 5980 128
3.5'' SMR Seagate Archive ST6000AS0002 6 6 5980 128
3.5'' SMR Seagate Archive ST8000AS0002 8 6 5980 128
3.5'' SMR Seagate Exos 5E8 ST8000AS0003 8 4 5980 256
3.5'' SMR Seagate BarraCuda ST2000DM005 2 1 5400 256
3.5'' SMR Seagate BarraCuda ST2000DM008 2 1 7200 256
3.5'' SMR Seagate BarraCuda ST3000DM007 3 2 5400 256
3.5'' SMR Seagate BarraCuda ST4000DM004 4 2 5400 256
3.5'' SMR Seagate BarraCuda ST6000DM003 6 3 5400 256
3.5'' SMR Seagate BarraCuda ST8000DM004 8 4 5400 256
3.5'' SMR Seagate SkyHawk ST3000VX009 3 2 5900 256
3.5'' SMR Seagate SkyHawk ST6000VX001 6 4 5900 256
3.5'' SMR HGST Ultrastar Archive Ha10 HMH7210A0ALE60y 10 7 7200 256
3.5'' SMR HGST Ultrastar Archive Ha10 HMH7210A0ALN60y 10 7 7200 256
3.5'' SMR HGST Ultrastar DC HC620/Hs14 HSH721414ALE6M0 14 8 7200 512
3.5'' SMR HGST Ultrastar DC HC620/Hs14 HSH721414ALN6M0 14 8 7200 512
3.5'' SMR HGST Ultrastar DC HC620 HSH721415ALE6M0 15 8 7200 512
3.5'' SMR HGST Ultrastar DC HC620 HSH721415ALE6M0 15 8 7200 512
3.5'' SMR WDC Blue WD20EZAZ 2 1 5400 256
3.5'' SMR WDC Blue WD60EZAZ 6 3 5400 256
2.5'' SMR WDC Blue WD10SPZX 1 1 5400 128
2.5'' SMR WDC Blue WD20SPZX 1 1 5400 128
2.5'' SMR WDC Black WD10SPSX 1 1 7200 64
3.5'' PMR Seagate Desktop ST1000DM003 1 1 7200 64/32
3.5'' PMR Seagate Desktop ST2000DM001 2 2/3 7200 64
3.5'' PMR Seagate Desktop ST3000DM001 3 3 7200 64
3.5'' PMR Seagate Desktop ST4000DM000 4 4 5900 64
3.5'' PMR Seagate Desktop ST5000DM002 5 6 7200 128
3.5'' PMR Seagate Desktop ST6000DM001 6 6 7200 128
3.5'' PMR Seagate Desktop ST8000DM002 8 6 7200 256
3.5'' PMR Seagate BarraCuda ST1000DM010 1 1 7200 64
3.5'' PMR Seagate BarraCuda ST2000DM006 2 2/3 7200 64
3.5'' PMR Seagate BarraCuda ST3000DM008 3 3 7200 64
3.5'' PMR Seagate BarraCuda ST4000DM005 4 3 5900 64
3.5'' PMR Seagate BarraCuda Pro ST2000DM009 2 2 7200 128
3.5'' PMR Seagate BarraCuda Pro ST4000DM006 4 4 7200 128
3.5'' PMR Seagate BarraCuda Pro ST6000DM004 6 6 7200 256
3.5'' PMR Seagate BarraCuda Pro ST8000DM005 8 6 7200 256
3.5'' PMR Seagate BarraCuda Pro ST8000DM0004 8 7 7200 256
3.5'' PMR Seagate BarraCuda Pro ST10000DM0001 10 7 7200 256
3.5'' PMR Seagate BarraCuda Pro ST12000DM0001 12 8 7200 256
3.5'' PMR+TDMR Seagate BarraCuda Pro ST14000DM0001 14 8 7200 256
3.5'' PMR Seagate SV35 ST1000VX000 1 1 7200 64
3.5'' PMR Seagate SV35 ST2000VX000 2 3 7200 64
3.5'' PMR Seagate SV35 ST3000VX000 3 3 7200 64
3.5'' PMR Seagate Surveillance ST1000VX001 1 1 5900 64
3.5'' PMR Seagate Surveillance ST2000VX003 2 2 5900 64
3.5'' PMR Seagate Surveillance ST3000VX006 3 3 5900 64
3.5'' PMR Seagate Surveillance ST3000VX002 3 3 5900 64
3.5'' PMR Seagate Surveillance ST4000VX000 4 3 5900 64
3.5'' PMR Seagate Surveillance ST5000VX001 5 5 7200 128
3.5'' PMR Seagate Surveillance ST6000VX001 6 6 7200 128
3.5'' PMR Seagate Surveillance ST8000VX002 8 6 7200 256
3.5'' PMR Seagate SkyHawk ST1000VX005 1 1 5900 64
3.5'' PMR Seagate SkyHawk ST2000VX008 2 2 5900 64
3.5'' PMR Seagate SkyHawk ST3000VX010 3 3 5900 64
3.5'' PMR Seagate SkyHawk ST4000VX007 4 3 5900 64
3.5'' PMR Seagate SkyHawk ST6000VX0023 6 5 7200 256
3.5'' PMR Seagate SkyHawk ST8000VX0022 8 6 7200 256
3.5'' PMR Seagate SkyHawk ST10000VX0008 10 7 7200 256
3.5'' PMR Seagate SkyHawk ST12000VX0008 12 8 7200 256
3.5'' PMR+TDMR Seagate SkyHawk ST14000VX0008 14 8 7200 256
3.5'' PMR Seagate SkyHawk AI ST8000VE0004 4 5 7200 256
3.5'' PMR Seagate SkyHawk AI ST8000VE0004 6 5 7200 256
3.5'' PMR Seagate SkyHawk AI ST8000VE0004 8 6 7200 256
3.5'' PMR Seagate SkyHawk AI ST10000VE0004 10 7 7200 256
3.5'' PMR Seagate NAS ST1000VN000 1 1 5900 64
3.5'' PMR Seagate NAS ST2000VN000 2 2 5900 64
3.5'' PMR Seagate NAS ST3000VN000 3 4 5900 64
3.5'' PMR Seagate NAS ST4000VN000 4 4 5900 64
3.5'' PMR Seagate NAS ST6000VN0021 6 6 7200 128
3.5'' PMR Seagate NAS ST8000VN0002 8 6 7200 256
3.5'' PMR Seagate IronWolf ST1000VN002 1 1 5900 64
3.5'' PMR Seagate IronWolf ST2000VN004 2 2 5900 64
3.5'' PMR Seagate IronWolf ST3000VN007 3 3 5900 64
3.5'' PMR Seagate IronWolf ST4000VN008 4 3 5900 64
3.5'' PMR Seagate IronWolf ST6000VN0033 6 5 7200 256
3.5'' PMR Seagate IronWolf ST8000VN0022 8 6 7200 256
3.5'' PMR Seagate IronWolf ST10000VN0008 10 7 7200 256
3.5'' PMR Seagate IronWolf ST12000VN0008 12 8 7200 256
3.5'' PMR+TDMR Seagate IronWolf ST14000VN0008 14 8 7200 256
3.5'' PMR Seagate Enterprise NAS ST2000VN0001 2 2 7200 128
3.5'' PMR Seagate Enterprise NAS ST3000VN0001 3 4 7200 128
3.5'' PMR Seagate Enterprise NAS ST4000VN0001 4 4 7200 128
3.5'' PMR Seagate Enterprise NAS ST5000VN0001 5 5 7200 128
3.5'' PMR Seagate Enterprise NAS ST6000VN0001 6 6 7200 128
3.5'' PMR Seagate Enterprise NAS ST6000NE0001 6 6 7200 256
3.5'' PMR Seagate Enterprise NAS ST8000NE0001 8 6 7200 256
3.5'' PMR Seagate IronWolf Pro ST2000NE0025 2 2 7200 128
3.5'' PMR Seagate IronWolf Pro ST4000NE0025 4 4 7200 128
3.5'' PMR Seagate IronWolf Pro ST6000NE0023 6 6 7200 256
3.5'' PMR Seagate IronWolf Pro ST8000NE0004 8 7 7200 256
3.5'' PMR Seagate IronWolf Pro ST10000NE0008 10 7 7200 256
3.5'' PMR Seagate IronWolf Pro ST12000NE0008 12 8 7200 256
3.5'' PMR+TDMR Seagate IronWolf Pro ST12000NE0008 14 8 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST2000NM0125 2 2 7200 128
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST4000NM0115 4 4 7200 128
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST6000NM0115 6 5 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST6000NM0065 6 6 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST8000NM0055 8 6 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST2000NM0105 2 2 7200 128
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST4000NM0085 4 4 7200 128
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST6000NM0125 6 5 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST6000NM0055 6 6 7200 256
3.5'' PMR Seagate Exos 7E8/EC3.5 v5 ST8000NM0045 8 6 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST8000NM0016 8 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST8000NM0206 8 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST8000NM0006 8 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST8000NM0136 8 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST10000NM0016 10 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST10000NM0086 10 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST10000NM0006 10 7 7200 256
3.5'' PMR Seagate Exos X10/EC3.5 v6 ST10000NM0146 10 7 7200 256
3.5'' PMR Seagate Exos X12/EC3.5 v7 ST12000NM0007 12 8 7200 256
3.5'' PMR+TDMR Seagate Exos X14 ST14000NM0428 14 8 7200 256
3.5'' PMR HGST Ultrastar 7K6000 HUS726020ALE61y 2 2 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726040ALE61y 4 4/5 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726050ALE61y 5 5 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726060ALE61y 6 5 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726020ALN61y 2 2 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726040ALN61y 4 4/5 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726050ALN61y 5 5 7200 128
3.5'' PMR HGST Ultrastar 7K6000 HUS726060ALN61y 6 5 7200 128
3.5'' PMR HGST Ultrastar DC HC310/7K6 HUS726T4TALE6L4 4 3 7200 256
3.5'' PMR HGST Ultrastar DC HC310/7K6 HUS726T6TALE6L4 6 4 7200 256
3.5'' PMR HGST Ultrastar DC HC310/7K6 HUS726T4TALN6L4 4 3 7200 256
3.5'' PMR HGST Ultrastar DC HC310/7K6 HUS726T6TALN6L4 6 4 7200 256
3.5'' PMR HGST Ultrastar DC HC320/7K8 HUS728T8TALE6L4 8 5 7200 256
3.5'' PMR HGST Ultrastar DC HC320/7K8 HUS728T8TALN6L4 8 5 7200 256
3.5'' PMR HGST Ultrastar He8 HUH728060ALE60y 6 7 7200 128
3.5'' PMR HGST Ultrastar He8 HUH728080ALE60y 8 7 7200 128
3.5'' PMR HGST Ultrastar He8 HUH728060ALN60y 6 7 7200 128
3.5'' PMR HGST Ultrastar He8 HUH728080ALN60y 8 7 7200 128
3.5'' PMR HGST Ultrastar DC HC510/He10 HUH721008ALE60y 8 7 7200 256
3.5'' PMR HGST Ultrastar DC HC510/He10 HUH721010ALE60y 10 7 7200 256
3.5'' PMR HGST Ultrastar DC HC510/He10 HUH721008ALN60y 8 7 7200 256
3.5'' PMR HGST Ultrastar DC HC510/He10 HUH721010ALN60y 10 7 7200 256
3.5'' PMR HGST Ultrastar DC HC520/He12 HUH721212ALE60y 12 8 7200 256
3.5'' PMR HGST Ultrastar DC HC520/He12 HUH721212ALN60y 12 8 7200 256
3.5'' PMR+TDMR HGST Ultrastar DC HC530 WUH721414ALE6Ly 14 8 7200 512
3.5'' PMR+TDMR HGST Ultrastar DC HC530 WUH721414ALN6Ly 14 8 7200 512
3.5'' PMR WDC Blue WD10EZEX 1 1 7200 64
3.5'' PMR WDC Blue WD10EZRZ 1 1 5400 64
3.5'' PMR WDC Blue WD20EZRZ 2 2 5400 64
3.5'' PMR WDC Blue WD30EZRZ 3 3 5400 64
3.5'' PMR WDC Blue WD40EZRZ 4 4 5400 64
3.5'' PMR WDC Blue WD50EZRZ 5 5 5400 64
3.5'' PMR WDC Blue WD60EZRZ 6 5 5400 64
3.5'' PMR WDC Black WD1003FZEX 1 1 7200 64
3.5'' PMR WDC Black WD2003FZEX 2 3 7200 64
3.5'' PMR WDC Black WD3003FZEX 3 4 7200 64
3.5'' PMR WDC Black WD4004FZWX 4 5 7200 128
3.5'' PMR WDC Black WD4005FZBX 4   7200 256
3.5'' PMR WDC Black WD5001FZWX 5 5 7200 128
3.5'' PMR WDC Black WD6002FZWX 6 5 7200 128
3.5'' PMR WDC Black WD6003FZBX 6   7200 256
3.5'' PMR WDC Purple WD10PURX 1 1 5400 64
3.5'' PMR WDC Purple WD20PURX 2 2 5400 64
3.5'' PMR WDC Purple WD30PURX 3 3 5400 64
3.5'' PMR WDC Purple WD40PURX 4 4 5400 64
3.5'' PMR WDC Purple WD50PURX 5 5 5400 64
3.5'' PMR WDC Purple WD60PURX 6 5 5400 64
3.5'' PMR WDC Purple WD80PUZX 8 7 5400 128
3.5'' PMR WDC Purple WD81PUZX 8 7 5400 256
3.5'' PMR WDC Purple WD100PURZ 10 7 5400 256
3.5'' PMR WDC Purple WD101PURZ 10 7 7200 256
3.5'' PMR WDC Purple WD121PURZ 12 8 7200 256
3.5'' PMR WDC Red WD10EFRX 1 1 5400 64
3.5'' PMR WDC Red WD20EFRX 2 2/3 5400 64
3.5'' PMR WDC Red WD30EFRX 3 3 5400 64
3.5'' PMR WDC Red WD40EFRX 4 4 5400 64
3.5'' PMR WDC Red WD50EFRX 5 5 5400 64
3.5'' PMR WDC Red WD60EFRX 6 5 5400 64
3.5'' PMR WDC Red WD80EFZX 8 7 5400 128
3.5'' PMR WDC Red WD100EFAX 10 7 5400 256
3.5'' PMR WDC Red Pro WD2002FFSX 2 2/3 7200 64
3.5'' PMR WDC Red Pro WD4002FFWX 4 5 7200 128
3.5'' PMR WDC Red Pro WD4003FFBX 4   7200 256
3.5'' PMR WDC Red Pro WD6002FFWX 6 5 7200 128
3.5'' PMR WDC Red Pro WD6003FFBX 6   7200 256
3.5'' PMR WDC Red Pro WD8001FFWX 8 7 7200 128
3.5'' PMR WDC Red Pro WD8003FFBX 8 7 7200 256
3.5'' PMR WDC Red Pro WD101KFBX 10 7 7200 256
3.5'' PMR WDC Gold WD6002FRYZ 6 5 7200 128
3.5'' PMR WDC Gold WD8002FRYZ 8 7 7200 128
3.5'' PMR WDC Gold WD8003FRYZ 8 7 7200 256
3.5'' PMR WDC Gold WD101KRYZ 10 7 7200 256
3.5'' PMR WDC Gold WD121KRYZ 12 8 7200 256
3.5'' PMR Toshiba Desktop DT01ACA100 1 1 7200 32
3.5'' PMR Toshiba Desktop DT01ACA200 2 2 7200 64
3.5'' PMR Toshiba Desktop DT01ACA300 3 3 7200 64
3.5'' PMR Toshiba Generic Data Storage MD04ACA200 2   7200 128
3.5'' PMR Toshiba Generic Data Storage MD04ACA300 3   7200 128
3.5'' PMR Toshiba Generic Data Storage MD04ACA400 4 5 7200 128
3.5'' PMR Toshiba Generic Data Storage MD04ACA500/D 5 5 7200 128
3.5'' PMR Toshiba Generic Data Storage MD04ACA600 6 6 7200 128
3.5'' PMR Toshiba Video Stream DT01ABA100V 1 1 5700 32
3.5'' PMR Toshiba Video Stream DT01ABA200V 2 2 5700 32
3.5'' PMR Toshiba Video Stream DT01ABA300V 3 3 5940 32
3.5'' PMR Toshiba Surveillance MD04ABA400V 4   5400 128
3.5'' PMR Toshiba Surveillance MD04ABA500V 5   5400 128
3.5'' PMR Toshiba Surveillance MD06ACA600V 6   7200 256
3.5'' PMR Toshiba Surveillance MD06ACA800V 8   7200 256
3.5'' PMR Toshiba Surveillance MD06ACA10TV 10 7 7200 256
3.5'' PMR Toshiba NAS MN04ACA400 4 5 7200 128
3.5'' PMR Toshiba NAS MN05ACA600 6 6 7200 128
3.5'' PMR Toshiba NAS MN05ACA800 8 6 7200 128
3.5'' PMR Toshiba NAS MN06ACA10T 10 7 7200 256
3.5'' PMR Toshiba NAS MN07ACA12T 12 8 7200 256
3.5'' PMR Toshiba NAS MN07ACA14T 14 9 7200 256
3.5'' PMR Toshiba Enterprise Cloud MC04ACA200E 2 4 7200 128
3.5'' PMR Toshiba Enterprise Cloud MC04ACA300E 3 4 7200 128
3.5'' PMR Toshiba Enterprise Cloud MC04ACA400E 4 5 7200 128
3.5'' PMR Toshiba Enterprise Cloud MC04ACA500E 5 5 7200 128
3.5'' PMR Toshiba Enterprise Cloud MC04ACA600E 6 5 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA200E 2 4 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA300E 3 4 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA400E 4 5 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA500E/DE 5 5 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG06ACA600E 6   7200 256
3.5'' PMR Toshiba Enterprise Capacity MG06ACA800E 8   7200 256
3.5'' PMR Toshiba Enterprise Capacity MG06ACA10TE 10 7 7200 256
3.5'' PMR Toshiba Enterprise Capacity MG07ACA12TE 12 8 7200 256
3.5'' PMR Toshiba Enterprise Capacity MG07ACA14TE 14 9 7200 256
3.5'' PMR Toshiba Enterprise Capacity MG04ACA200A 2 4 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA300A 3 4 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA400A 4 5 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG04ACA500A/DA 5 5 7200 128
3.5'' PMR Toshiba Enterprise Capacity MG06ACA600A 6   7200 256
3.5'' PMR Toshiba Enterprise Capacity MG06ACA800A 8   7200 256
3.5'' PMR Toshiba Enterprise Capacity MG06ACA10TA 10 7 7200 256
3.5'' PMR Toshiba Enterprise Capacity MG07ACA12TA 12 8 7200 256
3.5'' PMR Toshiba Enterprise Capacity MG07ACA14TA 14 9 7200 256

下面是部分型号的西数的官网规格表,如下:

继续阅读3.5寸硬盘参数表-PMR/SMR/TDMR-2018-10-24

Samsung Magician 6.0升级固件失败“在选定的驱动器上无法更新固件。”("Failed to update firmware on the selected drive.")

最近的三星固态硬盘提示固件有升级,但是固件升级失败,提示“在选定的驱动器上无法更新固件。”或者"Failed to update firmware on the selected drive."

如下图所示:

继续阅读Samsung Magician 6.0升级固件失败“在选定的驱动器上无法更新固件。”("Failed to update firmware on the selected drive.")

尝试修复希捷固件门硬盘(SV35系列ST3000VX000)

最近家里的`NAS` 服务器上的希捷硬盘挂了,总寿命不超过 `1` 万小时,当时买硬盘的时候,记得是特意规避过希捷的 `STX000DM001` 这个版本的硬盘,这个版本的硬盘由于质量问题,基本上都会挂掉。  结果没想到,`ST3000VX000`不过是 `ST3000DM001` 的马甲而已。

中招,经过下面的修复之后,依旧没有办法修复,数据无法读取成功。尝试其他命令之后,整盘报废,`ST3000DM001` 系列硬盘完全没办法用,尽管关键数据都已经冗余备份,但是部分次要数据依旧丢失。

下面只是记录一下操作过程,没有实际意义。

希捷硬盘型号信息查询网站: https://apps1.seagate.com/downloads/request.html
继续阅读尝试修复希捷固件门硬盘(SV35系列ST3000VX000)

下载Sourceforge等国内无法下载站点文件的方法

`Sourceforge` 是一些开源软件经常用到的网站,然而国内的网站一直不稳定,如今是可以访问,但是一直无法下载,今天发现了一种新方法那就是 http://www.mirrorservice.org 这个网站,这个网站提供了众多网站的镜像,可以通过 `web` 或者 `ftp` 等方式来访问,看了下,里面的站点相当多。 但是版本可能比较老,最新的版本可能要多等一段时间。

继续阅读下载Sourceforge等国内无法下载站点文件的方法

ANDROID 高性能图形处理 之 二. OPENGL ES

参考链接


null值在in/not in的陷阱

背景

在某个项目统计数据时,发现以外丢掉了部分数据,仔细查找,是null值在in/not in出现了判断问题。

问题

在统计数据时,需要去除某些值,使用了not in逻辑。

select null not in ('1', '2')

这行代码,要完成的逻辑是,null 不属于 '1' 或者 '2'。

想当然认为应该返回 true,实际上返回了null,null值映射为false。

最终统计丢失了这一部分null值。

继续测试

继续测试了各种null使用in/not in的例子

select null in ('1', '2', null);
select '3' not in ('1', '2', null);
select null not in ('1', '2');
都出现了与想当然不符合的结果

 

该问题的详细原理可以参考这篇文章 http://www.itpub.net/thread-1325582-1-1.html

小结

null值不应该参与in/not in逻辑判断。