006集——where语句进行属性筛选——arcgis

news2024/11/18 7:50:02

         在arcgis中, dBASE 文件除了 WHERE 语句以外,不支持 其它 SQL 命令。选择窗口如下:

        首先,我们了解下什么是where语句。

        WHERE语句是SQL语言中使用频率很高的一种语句。它的作用是从数据库表中选择一些特定的记录行来进行操作。WHERE语句以关键词“WHERE”开头,后接所需的查询条件,可以是简单的等式、不等式等,也可以是复杂的逻辑表达式。通过WHERE语句,可以根据不同的条件进行灵活的数据查询操作。

        了解WHERE首先需要了解SQL。

SQL是什么

结构化查询语言

        SQL,全称为结构化查询语言(Structured Query Language),是一种用于与关系数据库进行通信的标准语言。它允许用户执行各种任务,如更新数据库中的数据、从数据库中检索数据、查询、更新和管理关系数据库系统。SQL语句可以执行数据库操作,如定义和删除模式、定义和修改基本表、建立和删除索引、数据更新、定义和查询视图等。

        SQL语言虽然被广泛使用,但它并不是严格意义上的编程语言,而是一种对数据进行操作的语言。它具有特定的语法结构,使得用户可以灵活地处理数据。此外,SQL也是数据库脚本文件的常见扩展名。

        接下来继续讲WHERE。

WHERE语句作用于数据库表中的记录行,可以从表中选择出需要的数据行进行操作。在SQL语言中,可以使用WHERE语句实现单表的选取、多表关联查询、数据筛选等功能。

        在 ArcGIS 中,查询表达式用于选择要素和表记录的子集。ArcGIS 中的查询表达式符合标准的 SQL 表达式。例如,您可以在使用按属性选择工具或查询构建器 对话框时使用此语法来设置图层定义查询。

        本 主题将介绍如何构建基本的 WHERE 子句表达式。如果您刚刚开始使用 SQL,本主题会对您有所帮助。要获取更加详细的参考,请参阅在 ArcGIS 中使用的查询表达式的 SQL 参考。

        简单的 SQL 表达式

        SELECT * FROM 构成了 SQL 表达式的第一部分,系统会自动为您提供该语句。

        查询表达式使用跟随在 Select * From <图层或数据集> Where 子句之后这样的一般格式(例如,跟随在 SELECT * FROM <图层名称> WHERE 之后的 SQL 表达式部分)。

以下是 ArcGIS 查询表达式的一般格式:

<字段名> <运算符> <值或字符串>

对于组合查询,使用以下格式:

<字段名> <运算符> <值或字符串> <连接符> <字段名> <运算符> <值或字符串> ...

也可以使用括号 () 来定义组合查询中的运算顺序。

由于您是将列作为一个整体进行选择的,因此不能将 SELECT 限制为仅返回相应表中的部分列,原因是 SELECT * 语法是通过硬编码实现的。因此,除非在使用子查询时,否则无法在 ArcGIS 的 SQL 查询中使用 DISTINCT、ORDER BY 和 GROUP BY 等关键字。有关子查询的信息,请参阅在 ArcGIS 中使用的查询表达式的 SQL 参考。

        在从中构建查询表达式的多数 ArcGIS 对话框中,都会为您提供图层或表的名称(或者从下拉列表中选择)。例如:

表达式的下一个部分是 WHERE 子句,这是您必须构建的部分。基本的 SQL WHERE 子句如下所示

STATE_NAME = 'Alabama'

这样会在名为 STATE_NAME 的字段中选择包含“Alabama”的要素。

SQL 语法

所使用的 SQL 语法因数据源的不同而有所差异。每个 DBMS 都拥有各自的 SQL 方言。

要查询基于文件的数据(包括文件地理数据库、coverage、shapefile、INFO 表、dBASE 表、CAD 和 VPF 数据),请使用支持 SQL 功能的子集的 ArcGIS SQL 方言。要查询个人地理数据库,请使用 Microsoft Access 语法。要查询 ArcSDE 地理数据库,请使用基础 DBMS(即:Oracle、SQL Server、DB2、Informix 或 PostgreSQL)的 SQL 语法。

从中创建 SQL WHERE 子句的 ArcGIS 对话框会帮助您对所查询的数据库使用正确的语法。它们利用适当的分隔符列出正确的字段名称和值。而且还为您选择相关的 SQL 关键字和运算符。

搜索字符串

字符串必须始终用单引号括起。例如:

STATE_NAME = 'California'

表达式中的字符串区分大小写,但在查询个人地理数据库中的要素类和表时除外。要在其他数据格式中进行不区分大小写的搜索,您可使用 SQL 函数将所有值转换为相同的大小写形式。对于基于文件的数据源(如地理数据库或 shapefile),可使用 UPPER 或 LOWER 函数。

例如,以下表达式将选择姓氏存储为 Jones 或 JONES 这两种形式的客户:

UPPER(LAST_NAME) = 'JONES'

其他数据源也有类似的函数。例如,个人地理数据库中的 UCASE 和 LCASE 函数可执行同样的操作。

可使用 LIKE 运算符(而不是 = 运算符)来构建部分字符串搜索。例如,以下表达式将从美国州名称中选择 Mississippi 和 Missouri:

STATE_NAME LIKE 'Miss%'

% 表示其位置可以是任意数量的任何字符:一个字符、一百个字符或无字符。此外,如果您希望在查询时通配符仅代表一个字符,则可使用“_”。

例如,以下表达式将找到 Catherine Smith 和 Katherine Smith:

OWNER_NAME LIKE '_atherine smith'

上述通配符适用于任何基于文件的数据或 ArcSDE 地理数据库数据。在查询个人地理数据库时,使用通配符 * 来表示任意数量的字符,而使用 ? 来表示一个字符。

在按属性选择 和查询构建器 对话框中,通配符以按钮的形式显示。您可单击相应的按钮来将通配符输入到正在构建的表达式中。构建查询时,仅显示适用于所查询的图层或表的数据源的通配符。

如果在字符串中同时使用通配符和 = 运算符,则此字符将被视为字符串的一部分,而不会将其视为通配符。

还可使用大于 (>)、小于 (<)、大于等于 (>=)、小于等于 (<=) 以及 BETWEEN 运算符,来基于排序顺序选择字符串值。例如,以下表达式将选择 coverage 中名称首字母为 M 到 Z 的所有城市:

CITY_NAME >= 'M'

查询字符串时,还可使用不等于 (<>) 运算符。

如果字符串包含单引号,您首先需要使用另一单引号作为转义字符。例如:

NAME = 'Alfie''s Trough'

了解有关通配符的详细信息

NULL 关键字

可使用 NULL 关键字来选择指定字段为空值的要素和记录。NULL 关键字的前面始终使用 IS 或 IS NOT。

例如,要查找尚未输入 1996 年人口的城市,可使用

POPULATION96 IS NULL

或者,要查找已输入 1996 年人口的城市,可使用

POPULATION96 IS NOT NULL

搜索数字

可使用等于 (=)、不等于 (<>)、大于 (>)、小于 (<)、大于等于 (>=)、小于等于 (<=) 和 BETWEEN 运算符查询数字。

例如

POPULATION96 >= 5000

无论区域设置如何定义,所列出的数值将始终使用点作为小数分隔符。在表达式中不能使用逗号作为小数分隔符或千位分隔符。

计算

可使用算术运算符 +、-、* 和 / 在查询中加入计算:

可在字段和数字之间进行计算。

例如:

AREA >= PERIMETER * 100

也可在字段之间进行计算。

例如,要查找人口密度小于等于每平方英里 25 人的所有国家,可使用以下表达式:

POP1990 / AREA <= 25

运算符优先级

表达式求值顺序遵照标准的运算符优先级规则。例如,求值时,首先计算括号内部的表达式部分,然后再计算其他部分。

示例

HOUSEHOLDS > MALES * POP90_SQMI + AREA

与以下表达式的求值顺序不同

HOUSEHOLDS > MALES * (POP90_SQMI + AREA)

可单击添加括号,然后输入括号内部的表达式,也可高亮显示要放入括号内部的现有表达式,然后单击括号按钮

将其括起。

组合表达式

通过使用 AND 和 OR 运算符将表达式组合在一起,可构建复杂表达式。

例如,以下表达式将选择面积超过 1,500 平方英尺的所有房屋和一个可容纳三台或更多汽车的车库。

AREA > 1500 AND GARAGE > 3

如果使用 OR 运算符,OR 运算符两侧的两个表达式中必须至少有一个为真时才会选择记录。

例如:

RAINFALL < 20 OR SLOPE > 35

在表达式开头使用 NOT 运算符可查找与指定表达式不匹配的要素或记录。

例如:

NOT STATE_NAME = 'Colorado'

NOT 表达式可与 AND 和 OR 组合。

例如,以下表达式将选择除 Maine 以外的所有新英格兰州。

SUB_REGION = 'New England' AND NOT STATE_NAME = 'Maine'

子查询

子查询是嵌套在另一个查询中的查询,仅受地理数据库数据源支持。子查询可用于应用谓词或聚合函数,或将数据与存储在另一张表中的值进行比较。例如,以下查询只会选择未列在表 indep_countries 中的国家:

COUNTRY_NAME NOT IN (SELECT COUNTRY_NAME FROM indep_countries)

有关详细信息,请参阅在 ArcGIS 中使用的查询表达式的 SQL 参考。

查询日期

从中创建 SQL WHERE 子句的 ArcGIS 对话框会帮助您对所查询的数据库使用正确的数据语法。大多数情况下,只需单击字段、运算符和值,即可生成正确的语法。

在单表查询中,可以通过WHERE语句根据特定条件选取符合要求的记录行。例如:

SELECT * FROM tableName WHERE column1="xxx";

本主题将介绍 ArcGIS 中的选择表达式所用的常规查询的各个元素。ArcGIS 中的查询表达式使用常规 SQL 语法。

警告:

SQL 语法不适用于使用字段计算器计算字段。

字段

在 SQL 表达式中指定字段时,如果该字段名可能产生岐义(比如与 SQL 保留关键字相同),则需提供一个分隔符。

由于存在许多保留关键字,并且后续版本中还能添加新的保留关键字,所以建议您始终使用分隔符将字段名称括起来。

DBMS 和 DBMS 之间的字段名分隔符有所不同。如果要查询任何基于文件的数据(例如,文件地理数据库、ArcSDE 地理数据库数据,或者 ArcIMS 要素类或影像服务子图层中的数据),可以将字段名称用双引号括起:

"AREA"

如果要查询个人地理数据库数据,可以将字段名称用方括号括起:

[AREA]

对于个人地理数据库栅格数据集,应将字段名称用双引号括起:

"AREA"

对于文件地理数据库数据,您可以将字段名称用双引号括起,但是通常不需要。

AREA

字符串

查询中的字符串必须始终用单引号括起。例如:

STATE_NAME = 'California'
  • 表达式中的字符串区分大小写。对于要素类和表,可以用 UPPER 或 LOWER 函数设置所选项的大小写。例如:
    UPPER(STATE_NAME) = 'RHODE ISLAND'
  • 个人地理数据库要素类和表中的字符串不区分大小写。如果需要,可以使用与 UPPER 或 LOWER 等效的 UCASE 和 LCASE 函数。
  • 如果字符串包含单引号,您首先需要使用另一单引号作为转义字符。例如:
    NAME = 'Alfie''s Trough'

进行部分字符串搜索所用的通配符还取决于所要查询的数据源。例如,在基于文件的或 ArcSDE 地理数据库数据源中,以下表达式将从美国州名称中选择 Mississippi 和 Missouri:

STATE_NAME LIKE 'Miss%'

百分号 (%) 表示这个位置可以是任意字符,即 1 个字符、100 个字符或者无字符均可。在查询个人地理数据库时,使用通配符“*”代表任意数量的字符,而使用“?”来代表一个字符。

字符串函数可用来格式化字符串。例如,LEFT 函数将返回字符串左侧特定数量的字符。在以下示例中,查询将返回以字母 A 开头的所有州:

LEFT(STATE_NAME,1) = 'A'

有关支持的函数列表,请参阅 DBMS 文档。

数值

无论您的区域设置如何,小数点 (.) 将始终用作小数分隔符。在表达式中不能使用逗号作为小数分隔符或千位分隔符。

可以使用等于 (=)、不等于 (<>)、大于 (>)、小于 (<)、大于等于 (>=) 和小于等于 (<=) 和 BETWEEN 运算符查询数值。例如:

POPULATION >= 5000

数值函数可用来格式化数值。例如,ROUND 函数可将文件地理数据库中的数值四舍五入到指定的小数位数:

ROUND(SQKM,0) = 500

有关支持的数值函数列表,请参阅 DBMS 文档。

日期和时间

基本规则

地理数据库数据源将日期保存在日期时间字段中。但是,ArcInfo coverage 和 shapefile 不是这样。

因此,下面所列的大部分查询语法都包含对时间的引用。在某些情况下,当已知字段只包含日期时,查询中的时间部分可以安全地省略掉;而在其他情况下则需要声明,否则查询将返回语法错误。

ArcMap 日期格式的主要目的是存储日期,不是时间。当基础数据库实际上使用日期时间字段时,可以在此字段中只存储时间,但最好不要这样做。查询时间会比较麻烦;例如,12:30:05 p.m. 会被存储为 '1899-12-30 12:30:05'。

注:

基础数据库中日期的存储会参考 1899 年 12 月 30 日 00:00:00。这适用于此处所列出的所有数据源。

本部分内容的目的只是帮助您查询日期值,而非时间值。当存储了包含非空时间的日期(例如 1999 年 1 月 12 日 04:00:00)后,只查询该日期将不会返回这条记录,因为当向一个日期时间字段只传递日期时,系统会自动用零填充时间,所以将只检索该日期下时间为 12:00:00 a.m 的记录。

属性表内会以用户友好的格式来显示日期和时间(取决于用户的区域设置)而不是采用基础数据库的格式。这在大多数情况下都很适用,但也有一些缺点:

  • SQL 查询中显示的字符串可能会与表中显示的值稍有不同,尤其是当包含时间时。例如,输入的时间 00:00:15 将在属性表中(当您的区域设置为美国时)显示为 12:00:15 a.m.,对应于查询语法将是 Datefield = '1899-12-30 00:00:15'。
  • 属性表在您保存编辑之前无法知道是何种基础数据源。它首先会尝试将输入的值格式化为符合自己的格式,然后在保存编辑内容时,会再尝试对生成的值进行调整以便存入数据库。因此,您可以在 shapefile 中输入一个时间值,但您会发现当您保存编辑内容时该值会被丢弃。随后该字段将包含值 '1899-12-30' 并显示 12:00:00 a.m. 或其他等效的值(取决于您的区域设置)。

1.1条件查询

给查询语句设置条件,如果条件成立,则数据被返回,如果条件不成立,数据被忽略。

所有的条件成立情况,我们称为True,所有的条件不成立情况我们称为False。

使用where条件查询可以对表中的数据进行筛选,条件成立的记录会出现在结果集中。

1.2where语句支持的运算符:

  1. 比较运算符
  2. 逻辑运算符
  3. 模糊查询
  4. 范围查询
  5. 空判断

2. 比较运算符查询

  • 等于: =
  • 大于: >
  • 大于等于: >=
  • 小于: <
  • 小于等于: <=
  • 不等于: != 或 <>

3. 逻辑运算符查询

  • and 逻辑与: 同真即真
  • or 逻辑或: 同假即假
  • not 逻辑非: 真变假,假变真
# 逻辑运算符
# and :逻辑与  同真即真
# true and false >> false
# true and true >> true
# false and false >> false
# or : 逻辑或  同假即假
# true or false >> true
# true or true >> true
# false or false >> false
# not :逻辑非  真变假,假变真

4. 模糊查询

  • like是模糊查询关键字
  • %表示任意多个任意字符
  • _表示一个任意字符

5. 范围查询

  1. between .. and .. 表示在一个连续的范围内查询
  2. in 表示在一个非连续的范围内查询

6. 空判断查询

  1. 判断为空使用: is null
  2. 判断非空使用: is not null

注意:

  1. 不能使用 where height = null 判断为空
  2. 不能使用 where height != null 判断非空
  3. null 不等于 '' 空字符串

7. 小结

  • 比较查询:< > <= >= = != <>
  • 逻辑查询
    • and 逻辑与: 同真即真
    • or 逻辑或: 同假即假
    • not 逻辑非: 真变假,假变真

  • 模糊查询: like
    • % 代表0个或者多个任意字符
    • _代表一个任意字符

  • 范围查询:
    • 连续范围: between 。。。 and 。。。 (包含左右边界)
    • 不连续范围: in 可以对字符型数据查询

  • 非空查询:
    • is null (判断是否为空)
    • is not null(判断是否不为空)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1438077.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第二证券:沪指涨近1%收复2800点,券商等板块拉升,稀土板块爆发

7日早盘&#xff0c;两市股指延续昨日强势&#xff0c;再度拉升。沪指涨近1%克复2800点&#xff0c;深成指、科创50指数大涨约3%&#xff1b;两市半日成交超6000亿元&#xff0c;北向资金净买入超20亿元。 截至午间收盘&#xff0c;沪指涨0.91%报2814.89点&#xff0c;深成指涨…

第1章 认识Flask

学习目标 了解Flask框架&#xff0c;能够说出Flask框架的发展史以及特点 熟悉隔离Python环境的创建方式&#xff0c;能够独立在计算机上创建隔离的Python环境 掌握Flask的安装方式&#xff0c;能够独立在计算机上安装Flask框架 掌握PyCharm配置隔离环境的方式&#xff0c;能…

电脑文件误删除怎么办?8个恢复软件解决电脑磁盘数据可能的误删

您是否刚刚发现您的电脑磁盘数据丢失了&#xff1f;不要绝望&#xff01;无论分区是否损坏、意外格式化或配置错误&#xff0c;存储在其上的文件都不一定会丢失到数字深渊。 我们已经卷起袖子&#xff0c;深入研究电脑分区恢复软件的广阔领域&#xff0c;为您带来一系列最有效…

如何在 emacs 上开始使用 Tree-Sitter (archlinux)

文章目录 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 在archlinux上使用比windows上不知道要方便多少倍&#xff01; $ sudo pacman -S emacs $ sudo pacman -S tree-sitter这里…

国内首个openEuler师训营圆满结营! 麒麟信安助力培养国产操作系统高质量师资人才

2024年1月22日&#xff0c;全国首个openEuler师训营圆满结营&#xff01;旨在深化产教融合&#xff0c;加速开源教育走进高校&#xff0c;提高师资队伍openEuler专业能力及实践教学水平。 本次师训营由长沙市大数据产业链、长沙市新一代自主安全计算系统产业链指导&#xff0c…

RxJava Subject

目录 AsyncSubjectBehaviorSubjectPublishSubjectReplaySubjectSerializedSubjectUnicastSubject 在Rxjava中&#xff0c; Subject可以同时表示Observer和Observable, 允许从单个源到多个子观察者multiple child Observers。 除了 onSubscribe(io.reactivex.disposables.Dispos…

云计算运维1

1、企业服务器LNMP环境搭建 集群&#xff1a;多台服务器在一起作同样的事 。分布式 &#xff1a;多台服务器在一起作不同的事 。 环境准备&#xff1a; 1、设置静态ip&#xff08;NAT模式网关为.2&#xff09; # cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE"E…

【C生万物】C语言分支和循环语句

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &#x1f64f;小杨水平有…

uniapp /微信小程序 使用map组件实现手绘地图方案

获取地图范围 点图拾取坐标-地图开放平台|腾讯位置服务 获取需要手绘地图左下角和右上角GPS坐标 以北京故宫为例&#xff1a; 截取需要手绘地图进行手绘地图制作 ​​​​​​​​​​​​​​ 素材处理 由于地图素材文件比较大&#xff0c;小程序又限制包大小<2M,无…

51单片机基础:定时器

1.定时器介绍 51单片机通常有两个定时器&#xff1a;定时器 0/1&#xff0c;好一点的可能有定时器3。 在介绍定时器之前我们先科普下几个知识&#xff1a; 1&#xff0c;CPU 时序的有关知识 ①振荡周期&#xff1a;为单片机提供定时信号的振荡源的周期&#xff08;晶振周期或…

RAPTOR:树组织检索的递归抽象处理

RAPTOR: RECURSIVE ABSTRACTIVE PROCESSING FOR TREE-ORGANIZED RETRIEVAL Title&#xff1a;树组织检索的递归抽象处理 https://arxiv.org/pdf/2401.18059.pdf 摘要 检索增强语言模型可以更好的融入长尾问题&#xff0c;但是现有的方法只检索短的连续块&#xff0c;限制了整…

深度测评:ONLYOFFICE 桌面编辑器 v8.0新功能

目录 前言 一、PDF表单处理&#xff1a;提升办公效率 二、RTL&#xff08;从右到左&#xff09;支持&#xff1a;满足不同语言习惯 三、Moodle集成&#xff1a;教育行业的新助力 四、本地界面主题&#xff1a;个性化办公体验 五、性能优化与稳定性提升 六、性能与稳定性…

Ubuntu Linux使用PL2302串口和minicom进行开发板调试

调试远程的服务器上面的BMC&#xff0c;服务器上面安装了Ubuntu&#xff0c;想着可以在服务器接个串口到BMC&#xff0c;然后SSH到服务器的Ubuntu&#xff0c;用minicom来查看串口信息。 准备&#xff1a; 服务器Ubuntu安装mimicom 本机可以ssh到Ubuntu 串口工具PL2302 或者CH3…

React+Antd+tree实现树多选功能(选中项受控+支持模糊检索)

1、先上效果 树型控件&#xff0c;选中项形成一棵新的树&#xff0c;若父选中&#xff0c;子自动选中&#xff0c;子取消&#xff0c;父不取消&#xff0c;子选中&#xff0c;所有的父节点自动取消。同时支持模糊检索&#xff0c;会检索出所有包含该内容的关联节点。 2、环境准…

【iOS ARKit】人形遮挡

人形遮挡简介 在 AR系统中&#xff0c;计算机通过对设备摄像头采集的图像进行视觉处理和组织&#xff0c;建立起实景空间&#xff0c;然后将生成的虚拟对象依据几何一致性原理嵌入到实景空间中&#xff0c;形成虚实融合的增强现实环境&#xff0c;再输出到显示系统中呈现给使用…

6.electron之上下文隔离,预加载JS脚本

如果可以实现记得点赞分享&#xff0c;谢谢老铁&#xff5e; Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 Electron 将 Chromium 和 Node.js 嵌入到了一个二进制文件中&#xff0c;因此它允许你仅需一个代码仓库&#xff0c;就可以撰写支持 Windows、…

白嫖10款游戏加速器,一年都不用开会员!

过年期间你们是走亲串戚还是窝家玩游戏、追剧&#xff1f;相信很多小伙伴都不会放过这个难得的假期&#xff0c;肯定是会百忙之中来两把的&#xff0c;那么人一多玩游戏肯定就会拥堵&#xff0c;有延迟。解决延迟最好的办法就是用加速器&#xff0c;当你的网络比别人强时&#…

Rust通用代码生成器莲花发布红莲尝鲜版二十一,前端代码生成物有巨大改进

Rust通用代码生成器莲花发布红莲尝鲜版二十一&#xff0c;前端代码生成物有巨大改进 Rust通用代码生成器莲花已发布红莲尝鲜版二十一&#xff0c;此版本采用了新的前端代码生成引擎&#xff1a;时空之门前端代码生成器6.2.0。此引擎支持Nodejs 21,Nodejs 18和Nodejs 14。消除了…

开源软件:技术创新与应用的推动力量

文章目录 每日一句正能量前言开源软件如何推动技术创新开源软件的历史开源软件的开发模式开源软件与闭源软件源代码和开发许可维护特点、支持和成本开源软件的优势减少开支可定制性快速创新发展透明度和安全性 开源软件的应用 常见问题后记 每日一句正能量 不好等待运气降临&am…

如何检测机械硬盘和固态硬盘的健康状况?

机械硬盘、移动硬盘、固态硬盘等作为存储数据的重要部件&#xff0c;其重要性不言而喻。随着时间的推移&#xff0c;这些数据存储设备可能会出现各种问题&#xff0c;影响数据安全。机械硬盘、固态硬盘的健康状态怎么看&#xff1f;本篇介绍两个方法帮你检测电脑上的机械硬盘或…