本申请适用于人工智能技术领域,提供一种SQL语句的比对方法、装置、终端设备和存储介质。本申请首先将待比对的两个SQL语句转换为类对象,通过类对象可以识别SQL语句中各个字段的属性,从而找出其中包含的各个可交换排序的字段;然后,针对类对象中包含的可交换排序的字段按照相同方式调整排序;接着,将调整字段排序方式后的两个类对象重新转换回SQL语句,并对转换得到的SQL语句执行文本匹配,从而确定待比对的两个SQL语句是否一致。由于转换得到的SQL语句包含的可交换排序字段的排序方式是相同的,因此能够避免由于可交换排序字段的排序方式不同而导致的误识别SQL语句不一致的问题,从而提高SQL语句比对的准确率。
背景技术
SQL(StructuredQuery Language)语句是一种数据库查询和程序设计语言,主要用于存取数据以及查询、更新和管理关系数据库系统。在某些应用场景中,需要比对两个SQL语句的执行结果是否一致,目前常用的SQL语句比对方式是文本匹配,即比较两个SQL语句的文本是否完全一致,若文本完全一致则确定两个SQL语句的执行结果一致。
然而,两个文本不一致的SQL语句(例如只是部分可交换排序的字段的排序方式不同)所获得的执行结果也可能是相同的,而采用文本匹配的方式对这两个SQL语句进行比对则会获得不一致的比对结果。由此可见,现有的SQL语句比对方式存在准确率较低的问题。
实现思路