[發(fā)明專利]查詢語句的生成方法、裝置、設(shè)備和存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202110607407.0 | 申請(qǐng)日: | 2021-06-01 |
| 公開(公告)號(hào): | CN113051287B | 公開(公告)日: | 2021-08-20 |
| 發(fā)明(設(shè)計(jì))人: | 陳碩;梁博;徐澍;溫九 | 申請(qǐng)(專利權(quán))人: | 北京達(dá)佳互聯(lián)信息技術(shù)有限公司 |
| 主分類號(hào): | G06F16/242 | 分類號(hào): | G06F16/242 |
| 代理公司: | 北京集佳知識(shí)產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 李慧引 |
| 地址: | 100089 北京市海淀*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 查詢 語句 生成 方法 裝置 設(shè)備 存儲(chǔ) 介質(zhì) | ||
本公開關(guān)于一種查詢語句的生成方法、裝置、設(shè)備和存儲(chǔ)介質(zhì),方法包括,生成查詢請(qǐng)求匹配的層級(jí)架構(gòu);層級(jí)架構(gòu)中除最低層級(jí)以外每一層級(jí),均有基于目標(biāo)語法規(guī)則(目標(biāo)數(shù)據(jù)庫的查詢引擎的語法規(guī)則)確定的關(guān)鍵字;確定查詢請(qǐng)求中每個(gè)查詢參數(shù)在層級(jí)架構(gòu)中所屬層級(jí);利用查詢參數(shù)與目標(biāo)數(shù)據(jù)表的綁定關(guān)系,及每個(gè)查詢參數(shù)所屬類別,確定查詢參數(shù)在目標(biāo)數(shù)據(jù)表中對(duì)應(yīng)的查詢要素;從最低層級(jí)開始,按目標(biāo)語法規(guī)則,將每一層級(jí)的查詢語句與上一層級(jí)的關(guān)鍵字組合,得到上一層級(jí)的查詢語句,直至獲得最高層級(jí)的查詢語句;最低層級(jí)的查詢語句為:查詢參數(shù)對(duì)應(yīng)的查詢要素;根據(jù)目標(biāo)語法規(guī)則組合各個(gè)最高層級(jí)的查詢語句,得到滿足查詢請(qǐng)求的查詢語句。
技術(shù)領(lǐng)域
本公開涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,特別涉及一種查詢語句的生成方法、裝置、設(shè)備和存儲(chǔ)介質(zhì)。
背景技術(shù)
按一定的查詢請(qǐng)求在數(shù)據(jù)庫中查詢出相應(yīng)的數(shù)據(jù),是數(shù)據(jù)庫技術(shù)的一項(xiàng)重要應(yīng)用。為了降低數(shù)據(jù)庫使用門檻,相關(guān)技術(shù)中的查詢系統(tǒng)一般會(huì)預(yù)先對(duì)常見的各類查詢請(qǐng)求配置相應(yīng)的查詢語句模板,得到一個(gè)語句模板庫,用戶輸入查詢請(qǐng)求后,查詢系統(tǒng)就可以自動(dòng)將其中的查詢參數(shù)填寫至對(duì)應(yīng)的查詢語句模板中,得到和查詢請(qǐng)求匹配的查詢語句,然后調(diào)用查詢引擎執(zhí)行查詢語句,從而完成查詢。
這種方法存在的問題是,當(dāng)一個(gè)查詢系統(tǒng)包含連接的多個(gè)數(shù)據(jù)庫所用的查詢引擎互不相同時(shí),需要針對(duì)每一種查詢引擎配置一個(gè)對(duì)應(yīng)語句模板庫,導(dǎo)致查詢系統(tǒng)占用較多的存儲(chǔ)資源來保存不同查詢引擎的語句模板庫。
發(fā)明內(nèi)容
本公開提供一種查詢語句的生成方法、裝置、設(shè)備和存儲(chǔ)介質(zhì),以減少查詢系統(tǒng)所占用的存儲(chǔ)資源,本公開的技術(shù)方案如下:
根據(jù)本公開實(shí)施例的第一方面,提供一種查詢語句的生成方法,包括:
獲取針對(duì)目標(biāo)數(shù)據(jù)庫的查詢請(qǐng)求;其中,所述查詢請(qǐng)求包含多個(gè)查詢參數(shù);
生成與所述查詢請(qǐng)求的類型相匹配的層級(jí)架構(gòu);其中,所述層級(jí)架構(gòu)為多層結(jié)構(gòu);所述層級(jí)架構(gòu)中除最低層級(jí)以外的每一層級(jí),均對(duì)應(yīng)有基于目標(biāo)語法規(guī)則確定的關(guān)鍵字,所述目標(biāo)語法規(guī)則為所述目標(biāo)數(shù)據(jù)庫的查詢引擎的語法規(guī)則;
根據(jù)每個(gè)所述查詢參數(shù)的所屬類別,以及每個(gè)所述查詢參數(shù)在所述查詢請(qǐng)求中的位置,確定每個(gè)所述查詢參數(shù)在所述層級(jí)架構(gòu)中的所屬層級(jí);
利用數(shù)據(jù)模型中配置的查詢參數(shù)與目標(biāo)數(shù)據(jù)表的綁定關(guān)系,以及每個(gè)所述查詢參數(shù)的所屬類別,確定出所述查詢參數(shù)在目標(biāo)數(shù)據(jù)表中對(duì)應(yīng)的查詢要素;其中,所述目標(biāo)數(shù)據(jù)表為所述目標(biāo)數(shù)據(jù)庫包含的數(shù)據(jù)表;所述查詢要素為所述目標(biāo)數(shù)據(jù)表中的字段,或者,包含所述目標(biāo)數(shù)據(jù)表中的字段的表達(dá)式;
從所述層級(jí)架構(gòu)的最低層級(jí)開始,按照所述目標(biāo)語法規(guī)則,將每一層級(jí)的查詢語句與上一層級(jí)的關(guān)鍵字組合,得到上一層級(jí)的查詢語句,直至獲得所述層級(jí)架構(gòu)中最高層級(jí)的查詢語句為止;其中,所述查詢請(qǐng)求相匹配的層級(jí)架構(gòu)的最低層級(jí)的查詢語句為:所述最低層級(jí)所包含的查詢參數(shù)對(duì)應(yīng)的查詢要素;
根據(jù)所述目標(biāo)語法規(guī)則組合各個(gè)所述最高層級(jí)的查詢語句,得到所述查詢請(qǐng)求的查詢語句。
可選的,所述利用數(shù)據(jù)模型中配置的查詢參數(shù)與目標(biāo)數(shù)據(jù)表的綁定關(guān)系,以及每個(gè)所述查詢參數(shù)的所屬類別,確定出所述查詢參數(shù)在目標(biāo)數(shù)據(jù)表中對(duì)應(yīng)的查詢要素,包括:
針對(duì)每個(gè)所述查詢參數(shù),當(dāng)所述查詢參數(shù)所屬類別為原子指標(biāo)或維度時(shí),根據(jù)所述查詢參數(shù)與目標(biāo)數(shù)據(jù)表的綁定關(guān)系,在所述目標(biāo)數(shù)據(jù)表中查找得到所述查詢參數(shù)對(duì)應(yīng)的字段;
當(dāng)所述查詢參數(shù)所屬類別為過濾條件或復(fù)合指標(biāo)時(shí),根據(jù)所述查詢參數(shù)與目標(biāo)數(shù)據(jù)表的綁定關(guān)系,在所述目標(biāo)數(shù)據(jù)表中查找得到所述查詢參數(shù)關(guān)聯(lián)的字段,并將表達(dá)式模板和所述查詢參數(shù)關(guān)聯(lián)的字段組合,得到包含所述目標(biāo)數(shù)據(jù)表中的字段的表達(dá)式;其中,所述表達(dá)式模板根據(jù)所述目標(biāo)語法規(guī)則設(shè)定。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京達(dá)佳互聯(lián)信息技術(shù)有限公司,未經(jīng)北京達(dá)佳互聯(lián)信息技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110607407.0/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 帶有前處理和后處理的數(shù)據(jù)庫復(fù)合查詢系統(tǒng)及方法
- 數(shù)據(jù)庫查詢的方法和系統(tǒng)
- 查詢系統(tǒng)、查詢終端以及查詢方法
- 交易信息查詢方法、查詢裝置及查詢系統(tǒng)
- 數(shù)據(jù)查詢與結(jié)果生成方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 在RDF數(shù)據(jù)集上進(jìn)行OPTIONAL查詢的方法及存儲(chǔ)介質(zhì)
- 一種多表關(guān)聯(lián)查詢方法、裝置及設(shè)備
- 一種基于Impala的查詢方法和裝置
- 從查詢生成子查詢
- 一種基于通用查詢語言的查詢方法及查詢系統(tǒng)
- 基于聊天大數(shù)據(jù)知識(shí)庫的機(jī)器人對(duì)話控制方法和系統(tǒng)
- 基于大數(shù)據(jù)搜索的幽默型機(jī)器人對(duì)話控制方法和系統(tǒng)
- 基于對(duì)話知識(shí)庫的機(jī)器人對(duì)話控制方法和系統(tǒng)
- 一種自然語言語句評(píng)價(jià)方法及裝置
- 句子級(jí)雙語對(duì)齊方法及系統(tǒng)
- 一種獲取相似語句的方法、裝置、存儲(chǔ)介質(zhì)及電子設(shè)備
- 一種翻譯模型結(jié)果重排序的方法及裝置
- 用于輸出信息的方法、裝置、設(shè)備以及存儲(chǔ)介質(zhì)
- 搜索推薦方法和裝置、服務(wù)器、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 文本識(shí)別方法、裝置、電子設(shè)備和可讀存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





