本發明專利技術公開了一種數據查詢方法及裝置,包括:基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從該索引表中查詢與該指定屬性值對應的指定對象唯一標識,其中,該索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的;根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,該數據表中保存對象唯一標識與各屬性的屬性值的對應關系。采用本發明專利技術提供的方法和裝置,能夠提高數據查詢效率。
【技術實現步驟摘要】
本專利技術涉及數據庫領域,尤其涉及一種數據查詢方法及裝置。
技術介紹
數據庫是按照數據結構來組織、存儲和管理數據的倉庫,包括多種類型,從最簡單的存儲有各種數據的表格到能夠進行海量數據存儲的大型數據庫系統都在各個方面得到了廣泛的應用。數據查詢是數據庫最重要也是最終的目的,然而,在現有的數據查詢方案中,無論是單一條件查詢還是多條件查詢,都需要對存儲的數據表進行全表遍歷,因此數據查詢效率低下。
技術實現思路
本專利技術實施例提供一種數據查詢方法及裝置,用以解決現有技術中存在的數據查詢效率低下的問題。本專利技術實施例提供一種數據查詢方法,包括基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,其中,所述索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的;根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,所述數據表中保存對象唯一標識與各屬性的屬性值的對應關系。本專利技術實施例提供一種數據查詢裝置,包括第一查詢單元,用于基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,其中,所述索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的;第二查詢單元,用于根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,所述數據表中保存對象唯一標識與各屬性的屬性值的對應關系。本專利技術的有益效果包括本專利技術實施例提供的方法中,建立索引表,并且索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的,即屬性值表征的數值相同的各條記錄的存儲位置是連續的,因此在從索引表中查詢與查詢條件表征的需要滿足的指定屬性的指定屬性值對應的指定對象唯一標識時,不需要對索引表進行全表遍歷,然后通過得到的指定對象唯一標識,在數據表中查詢對應的屬性值,也不需要對數據表進行全表遍歷,因此提高了數據查詢效率。附圖說明附圖用來提供對本專利技術的進一步理解,并且構成說明書的一部分,與本專利技術實施例一起用于解釋本專利技術,并不構成對本專利技術的限制。在附圖中圖1為本專利技術實施例提供的數據查詢方法的流程圖;圖2為本專利技術實施例1和實施例2提供的數據庫示意圖;圖3為本專利技術實施例1提供的數據查詢方法的詳細流程圖;圖4為本專利技術實施例2提供的數據查詢方法的詳細流程圖;圖5為本專利技術實施例3和實施例4提供的數據庫示意圖;圖6為本專利技術實施例3提供的數據查詢方法的詳細流程圖;圖7為本專利技術實施例4提供的數據查詢方法的詳細流程圖;圖8為本專利技術實施例提供的數據查詢裝置的結構示意圖。具體實施例方式為了給出提高數據查詢效率的實現方案,本專利技術實施例提供了一種數據查詢方法及裝置,以下結合說明書附圖對本專利技術的優選實施例進行說明,應當理解,此處所描述的優選實施例僅用于說明和解釋本專利技術,并不用于限定本專利技術。并且在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。本專利技術實施例提供一種數據查詢方法,如圖1所示,包括步驟101、基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從該索引表中查詢與該指定屬性值對應的指定對象唯一標識,其中,該索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的;步驟102、根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,該數據表中保存對象唯一標識與各屬性的屬性值的對應關系。上述數據查詢方法適用于以任何形式存儲數據的數據庫,并且該方法適用于對數據庫的單一查詢條件數據查詢,也適用于對數據庫的多查詢條件數據查詢。上述數據查詢方法中的索引表具體可采用如下兩種方式建立方式一由屬性值和與該屬性值對應的對象唯一標識構成該索引表中的索引關鍵字,與該索引關鍵字對應的值為空;方式二 將屬性值作為該索引表中的索引關鍵字,與該索引關鍵字對應的值為與該屬性值對應的對象唯一標識。下面結合附圖,用具體實施例對采用兩種不同方式建立索引表時的數據查詢方法進行詳細描述。在下述實施例1和實施例2中,數據庫的索引表米用上述方式一建立由屬性值和與該屬性值對應的對象唯一標識構成該索引表中的索引關鍵字,與該索引關鍵字對應的值為空。以圖2所示數據庫為例進行說明,圖2所示數據庫用于存儲某中學學生基本信息,在數據表中,選擇數據編號作為對象唯一標識,學生的姓名、年齡、性別信息為各屬性的屬性值,根據數據編號可以查詢到對應的學生信息。各索引表中,由各屬性值和對應的數據編號構成索引關鍵字,與索引關鍵字對應的值為空。由于數據庫的索引表的特性,會自動對索引表中的各條對應關系記錄按照屬性值表征的數值大小進行排序,對于屬性值表征的數值相同的各條對應關系記錄,按照數據編號的數值大小進行排序。實施例1為基于該索引表進行單一查詢條件數據查詢時的詳細流程,實施例2為基于該索引表進行多查詢條件數據查詢時的詳細流程。實施例1 :圖3所示為本專利技術實施例提供的數據查詢方法的詳細流程圖,具體包括步驟301、當僅存在與一個指定屬性對應的一個查詢條件時,根據該查詢條件表征的需要滿足的指定屬性的指定屬性值,從與該指定屬性對應的索引表中查詢與指定屬性值對應的指定索引關鍵字。以查詢16歲的學生信息為例,即年齡為該查詢條件中表征的的指定屬性,“16歲”為該查詢條件中表征的指定屬性值,該查詢條件表征需要滿足年齡為“ 16歲”,從與年齡對應的索引表2中查詢與“16歲”對應的指定索引關鍵字,得到的指定索引關鍵字為“16歲+1,,、“16 歲 +3” 和 “16 歲 +4”。步驟302、從與指定屬性值對應的指定索引關鍵字中獲取與指定屬性值對應的指定對象唯一標識。即在上述具體案例中,從與“16歲”對應的指定索引關鍵字“16歲+1”、“16歲+3”和“16歲+4”中獲取與“16歲”對應的指定數據編號,得到的指定數據編號為和“4”。步驟303、在數據表中查詢與指定對象唯一標識對應的待查詢屬性的屬性值。對一些存儲大量數據的數據庫,可能滿足查詢條件的查詢結果有上萬條,如果采用同步返回查詢結果的方式,查詢效率較低,所以較佳的,可設置異步返回查詢結果的方式。即在上述具體案例中,在數據表中查詢與指定數據編號和“4”對應的待查詢屬性的屬性值。實施例2 圖4所示為本專利技術實施例提供的數據查詢方法的詳細流程圖,具體包括步驟401、當存在與多個指定屬性分別一一對應的多個查詢條件時,針對每個查詢條件,分別根據該查詢條件表征的需要滿足的對應指定屬性的指定屬性值,從與該對應指定屬性對應的索引表中查詢與每個指定屬性值對應的指定索引關鍵字,得到與該查詢條件對應的一組指定索引關鍵字。以查詢16歲男生的學生信息為例,本次查詢包括兩個查詢條件第一查詢條件中,年齡為該查詢條件中表征的指定屬性,“16歲”為該查詢條件中表征的指定屬性值,該查詢條件表征需要滿足年齡為“ 16歲”,從與年齡對應的索引表2中查詢與“ 16歲”對應的指定索引關鍵字,得到與該查詢條件對應的一組指定索引關鍵字為“16 歲 +1,,、“16 歲 +3” 和 “16 歲 +4”。第二查詢條件中,性別為該查詢條件中表征的指定屬性,“男”為該查詢條件中表征的指定屬性值本文檔來自技高網...
【技術保護點】
一種數據查詢方法,其特征在于,包括:基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,其中,所述索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的;根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,所述數據表中保存對象唯一標識與各屬性的屬性值的對應關系。
【技術特征摘要】
1.一種數據查詢方法,其特征在于,包括 基于索引表中保存的屬性值與對象唯一標識的對應關系,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,其中,所述索引表中的各條對應關系記錄是按照屬性值表征的數值大小排序的; 根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,所述數據表中保存對象唯一標識與各屬性的屬性值的對應關系。2.如權利要求1所述的方法,其特征在于,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,具體為 當僅存在與一個指定屬性對應的一個查詢條件時,根據所述查詢條件表征的需要滿足的所述指定屬性的指定屬性值,從與所述指定屬性對應的索引表中查詢與所述指定屬性值對應的指定對象唯一標識; 根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,具體為 在數據表中查詢與所述指定對象唯一標識對應的待查詢屬性的屬性值。3.如權利要求1所述的方法,其特征在于,根據查詢條件表征的需要滿足的指定屬性的指定屬性值,從所述索引表中查詢與所述指定屬性值對應的指定對象唯一標識,具體為 當存在與多個指定屬性分別一一對應的多個查詢條件時,針對每個查詢條件,分別根據該查詢條件表征的需要滿足的對應指定屬性的指定屬性值,從與所述對應指定屬性對應的索引表中查詢與每個指定屬性值對應的指定對象唯一標識,得到與該查詢條件對應的一組指定對象唯一標識; 根據得到的指定對象唯一標識,在數據表中進行對象的屬性值的查詢,具體為 根據得到的與多個查詢條件分別一一對應的多組指定對象唯一標識,確定所述多組指定對象唯一標識中共冋存在的指定對象唯一標識; 在數據表中查詢與所述共同存在的指定對象唯一標識對應的待查詢屬性的屬性值。4.如權利要求1所述的方法,其特征在于,所述索引表采用如下方式建立 由屬性值和與所述屬性值對應的對象唯一標識構成所述索弓丨表中的索引關鍵字,與所述索引關鍵字對應的值為空。5.如權利要求1所述的方法,其特征在于,所述...
【專利技術屬性】
技術研發人員:袁康,
申請(專利權)人:新浪技術中國有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。