Query languages, data query languages or database query languages (DQL) are
computer languages used to make queries in
databases and
information systems. A well known example is the
Structured Query Language (SQL).
Types
Broadly, query languages can be classified according to whether they are database query languages or information retrieval query languages. The difference is that a database query language attempts to give factual answers to factual questions, while an information retrieval query language attempts to find documents containing information that is relevant to an area of inquiry. Other types of query languages include:
* Full-text. The simplest query language is treating all terms as bag of words that are to be matched with the postings in the
inverted index and where subsequently ranking models are applied to retrieve the most relevant documents. Only tokens are defined in the CFG. Web search engines often use this approach.
* Boolean. A query language that also supports the use of the
Boolean operators AND, OR, NOT.
* Structured. A language that supports searching within (a combination of) fields when a document is structured and has been indexed using its document structure.
* Natural language. A query language that supports natural language by parsing the natural language query to a form that can be best used to retrieve relevant documents, for example with
Question answering
Question answering (QA) is a computer science discipline within the fields of information retrieval and natural language processing (NLP), which is concerned with building systems that automatically answer questions posed by humans in a natural l ...
systems or
conversational search
An intelligent virtual assistant (IVA) or intelligent personal assistant (IPA) is a software agent that can perform tasks or services for an individual based on commands or questions. The term "chatbot" is sometimes used to refer to virtual ...
.
Examples
*
Attempto Controlled English is a query language that is also a
controlled natural language.
*
AQL is a query language for the
ArangoDB
ArangoDB is a free and open-source native graph database system developed by ArangoDB Inc. ArangoDB is a multi-model database system since it supports three data models (graphs, JSON documents, key/value) with one database core and a unified q ...
native multi-model database system.
*
.QL
.QL (pronounced "dot-cue-el") is an object-oriented query language used to retrieve data from relational database management systems. It is reminiscent of the standard query language SQL and the object-oriented programming language Java. .QL is ...
is a proprietary object-oriented query language for querying
relational database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
s; successor of Datalog;
*
CodeQL
Semmle Inc is a static program analysis, code-analysis platform with offices in San Francisco, Seattle, New York City, New York, Oxford, Valencia and Copenhagen. Semmle was acquired by GitHub (itself owned by Microsoft) on 18 September 2019 for ...
is the analysis engine used by developers to automate security checks, and by security researchers to perform variant analysis on
GitHub.
*
Contextual Query Language (CQL) a formal language for representing queries to
information retrieval
Information retrieval (IR) in computing and information science is the process of obtaining information system resources that are relevant to an information need from a collection of those resources. Searches can be based on full-text or other co ...
systems such as web indexes or bibliographic catalogues.
*
Cypher
Cypher is an alternative spelling for cipher.
Cypher may also refer to:
Arts and entertainment
* Cypher (French Group), a Goa trance music group
* Cypher (band), an Australian instrumental band
* Cypher (film), ''Cypher'' (film), a 2002 film
* C ...
is a query language for the
Neo4j
Neo4j is a graph database management system developed by Neo4j, Inc. Described by its developers as an ACID-compliant transactional database with native graph storage and processing, Neo4j is available in a non-open-source "community edition" ...
graph database;
*
DMX
Earl Simmons (December 18, 1970 – April 9, 2021), known professionally as DMX, was an American rapper and actor. He began rapping in the early 1990s and released his debut album ''It's Dark and Hell Is Hot'' in 1998, to both critical acclaim ...
is a query language for
data mining models;
*
Datalog is a query language for
deductive databases;
*
F-logic is a declarative object-oriented language for
deductive databases and
knowledge representation
Knowledge representation and reasoning (KRR, KR&R, KR²) is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks such as diagnosing a medic ...
.
*
FQL enables you to use a
SQL-style interface to query the data exposed by the
Graph API. It provides advanced features not available in the
Graph API.
*
Gellish English is a language that can be used for queries in Gellish English Databases, for dialogues (requests and responses) as well as for information modeling and
knowledge modeling;
*
Gremlin is an
Apache Software Foundation
The Apache Software Foundation (ASF) is an American nonprofit corporation (classified as a 501(c)(3) organization in the United States) to support a number of open source software projects. The ASF was formed from a group of developers of the A ...
graph traversal language for OLTP and OLAP graph systems.
*
GraphQL is a data query language developed by
Facebook as an alternate to
REST and ad-hoc
webservice architectures.
*
HTSQL
Hyper Text Structured Query Language (HTSQL) is a schema-driven URI-to-SQL query language that takes a request over HTTP, converts it to a SQL query, executes the query against a database, and returns the results in a format best suited for the us ...
is a query language that translates
HTTP queries to
SQL;
*
ISBL
ISBL (Information Systems Base Language) is the relational algebra notation that was invented for PRTV, one of the earliest database management systems to implement E.F. Codd's relational model of data.
Example
OS = ORDERS * SUPPLIERS
LIST OS ...
is a query language for
PRTV, one of the earliest relational database management systems;
*
Jaql
Jaql (pronounced "jackal") is a functional data processing and query language most commonly used for JSON query processing on big data.
It started as an open source project at Google but the latest release was on 2010-07-12. IBM took it over as p ...
is a functional data processing and query language most commonly used for JSON query processing;
*
jq is a functional programming language often used for processing queries against one or more
JSON
JSON (JavaScript Object Notation, pronounced ; also ) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other ser ...
documents, including very large ones;
*
JSONiq is a declarative query language designed for collections of
JSON
JSON (JavaScript Object Notation, pronounced ; also ) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other ser ...
documents;
*
LDAP is an
application protocol
An application layer is an abstraction layer that specifies the shared communications protocols and interface methods used by hosts in a communications network. An ''application layer'' abstraction is specified in both the Internet Protocol Suit ...
for querying and modifying
directory services
In computing, a directory service or name service maps the names of network resources to their respective network addresses. It is a shared information infrastructure for locating, managing, administering and organizing everyday items and network r ...
running over
TCP/IP;
* LogiQL is a variant of Datalog and is the query language for the LogicBlox system.
*
M Formula language
Power Query is an ETL tool created by Microsoft for data extraction, loading and transformation, and is used to retrieve data from sources, process it, and load them into one or more target systems. Power Query is available in several variations ...
, a
mashup
Mashup may refer to:
* Mashup (culture), the rearrangement of spliced parts of musical pieces as part of a subculture
* Mashup (education), combining various forms of data and media by a teacher or student in an instructional setting
* Mashup (mus ...
query language used in Microsoft's Power Query
*
MQL is a
cheminformatics
Cheminformatics (also known as chemoinformatics) refers to use of physical chemistry theory with computer and information science techniques—so called "''in silico''" techniques—in application to a range of descriptive and prescriptive problem ...
query language for a
substructure search In theoretical computer science, the subgraph isomorphism problem is a computational task in which two graphs ''G'' and ''H'' are given as input, and one must determine whether ''G'' contains a subgraph that is isomorphic to ''H''.
Subgraph isomor ...
allowing beside nominal properties also numerical properties;
*
MDX is a query language for
OLAP databases;
*
N1QL
Couchbase Server, originally known as Membase, is an open-source software, open-source, distributed (shared-nothing architecture) Multi-model database, multi-model NoSQL document-oriented database software package optimized for interactive applic ...
is a
Couchbase's query language finding data in
Couchbase Servers;
*
Object Query Language
Object Query Language (OQL) is a query language standard for object-oriented databases modeled after SQL and developed by the Object Data Management Group (ODMG). Because of its overall complexity the complete OQL standard has not yet been full ...
*
OCL (Object Constraint Language). Despite its name, OCL is also an object query language and an
OMG standard;
*
OPath, intended for use in querying
WinFS ''Stores'';
*
Poliqarp Query Language
Poliqarp is an open source search engine designed to process text corpora, among others the National Corpus of Polish created at the Institute of Computer Science, Polish Academy of Sciences.
Features
* Custom query language
* Two-level regular e ...
is a special query language designed to analyze annotated text. Used in the
Poliqarp
Poliqarp is an open source search engine designed to process text corpora, among others the National Corpus of Polish created at the Institute of Computer Science, Polish Academy of Sciences.
Features
* Custom query language
* Two-level regular ...
search engine;
*
PQL is a
special-purpose programming language
A domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains. There are a wide variety of DSLs, ranging f ...
for managing
process models based on information about
scenarios
In the performing arts, a scenario (, ; ; ) is a synoptical collage of an event or series of actions and events. In the ''commedia dell'arte'', it was an outline of entrances, exits, and action describing the plot of a play, and was literally pi ...
that these models describe;
*
PTQL Program Trace Query Language (PTQL) is a language based on relational queries over program traces, in which programmers can write expressive, declarative queries about program behavior.
Sources
Conference on Object Oriented Programming Systems La ...
based on relational queries over program traces, allowing programmers to write expressive, declarative queries about program behavior.
*
QUEL is a
relational database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
access language, similar in most ways to
SQL;
*
RDQL
An RDF query language is a computer language, specifically a query language for databases, able to retrieve and manipulate data stored in Resource Description Framework (RDF) format.
SPARQL has emerged as the standard RDF query language, and in 20 ...
is a
RDF query language;
*
SMARTS is the
cheminformatics
Cheminformatics (also known as chemoinformatics) refers to use of physical chemistry theory with computer and information science techniques—so called "''in silico''" techniques—in application to a range of descriptive and prescriptive problem ...
standard for a
substructure search In theoretical computer science, the subgraph isomorphism problem is a computational task in which two graphs ''G'' and ''H'' are given as input, and one must determine whether ''G'' contains a subgraph that is isomorphic to ''H''.
Subgraph isomor ...
;
*
SPARQL is a query language for
RDF graphs
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
*Graph (topology), a topological space resembling a graph in the sense of discre ...
;
*
SQL is a well known query language and
data manipulation language for
relational database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
s;
*
XQuery is a query language for
XML data sources;
*
XPath is a declarative language for navigating XML documents;
*
YQL is an
SQL-like query language created by
Yahoo!
* Search engine query languages, e.g., as used by
Google or
Bing[
]
See also
*
Data control language
*
Data definition language
*
Data manipulation language
References
{{Authority control
Computer languages
Data management
Programming language classification
no:Database#Spørrespråk