SQL | Alternative Quote Operator
Last Updated :
21 Mar, 2018
This post is a continuation of the
SQL Concatenation Operator.
Now, suppose we want to use
apostrophe in our literal value but we can't use it directly.
See
Incorrect code:
SELECT id, first_name, last_name, salary,
first_name||' has salary's '||salary
AS "new" FROM one
So above we are getting error, because Oracle server thinking that the
first apostrophe is for the
starting literal and the
second apostrophe is for the
ending literal, so what about the
third apostrophe???. That's why we get error.
Alternative Quote Operator(q)
:
To
overcome the above problem Oracle introduce an operator known as
Alternative Quote Operator(q).
Let's see through an example:
Query that uses Alternative Quote Operator(q)
SELECT id, first_name, last_name, salary,
first_name||q'{ has salary's }'||salary
AS "new" FROM myTable
Output:
See, we are able to use apostrophe in the
new column as a literal value of myTable
ID FIRST_NAME LAST_NAME SALARY new
3 Shane Watson 50000 Shane has salary's 50000
1 Rajat Rawat 10000 Rajat has salary's 10000
2 Geeks ForGeeks 20000 Geeks has salary's 20000
3 MS Dhoni 90000 MS has salary's 90000
Here above see,
q'{ indicates starting of our literal value and then we use
}' which indicates end of our literal value. So see here we have used apostrophe in our literal value easily(means we easily use
's in salary) without any error that's why we get output as Rajat has salary
's 50000.
So to use apostrophe in literal we first need to use
q which is known as
alternative quote operator after that we need to use an apostrophe
' and after that we need to use a
delimiter and after delimiter we write our literal value, when we finished writing our literal value then again we need to
close the delimiter which we have
opened before and after that we need to put an
apostrophe again and hence in this way we can use apostrophe in our literal value. This concept is known as
Alternative Quote Operator(q).
We can use
any character such as
{,
<,
(,
[,
! or any character as
delimiter. These characters are known as
delimiters.
1 another example
:
Without using Quote Operator:
Here we get Error since we are using apostrophe in our literal value directly.
Error code below:
SELECT id, name, dept, name||' work's in '||dept||'
department' AS "work" FROM myTable2
Using Quote Operator:
SELECT id, name, dept, name||q'[ work's in ']'||dept||'
department' AS "work" FROM myTable2
Output:
See, we are able to use apostrophe in the
work column as a literal value of myTable2
ID NAME DEPT work
1 RR Executive RR work's in 'Executive department
2 GFG HR GFG work's in 'HR department
3 Steve Sales Steve work's in 'Sales department
4 Bhuvi CSE Bhuvi work's in 'CSE department
Here above see,
q'[ indicates starting of our literal value and the we use
]’ which indicate end of our literal value. So see here we have used
apostrophe in our literal value easily(means we easily use
‘s in work) without any error that’s why we get output as RR
work's in Executive Department.]
Here above we use
[ as delimiter so it is
not a limitation in using delimiter means we can use any character as delimiter.
References:
About Alternative Quote Operator,
Performing SQL Queries Online
Similar Reads
SQL Interview Questions Are you preparing for a SQL interview? SQL is a standard database language used for accessing and manipulating data in databases. It stands for Structured Query Language and was developed by IBM in the 1970's, SQL allows us to create, read, update, and delete data with simple yet effective commands.
15+ min read
SQL Tutorial Structured Query Language (SQL) is the standard language used to interact with relational databases. Whether you want to create, delete, update or read data, SQL provides the structure and commands to perform these operations. SQL is widely supported across various database systems like MySQL, Oracl
8 min read
SQL Commands | DDL, DQL, DML, DCL and TCL Commands SQL commands are crucial for managing databases effectively. These commands are divided into categories such as Data Definition Language (DDL), Data Manipulation Language (DML), Data Control Language (DCL), Data Query Language (DQL), and Transaction Control Language (TCL). In this article, we will e
7 min read
SQL Joins (Inner, Left, Right and Full Join) SQL joins are fundamental tools for combining data from multiple tables in relational databases. Joins allow efficient data retrieval, which is essential for generating meaningful observations and solving complex business queries. Understanding SQL join types, such as INNER JOIN, LEFT JOIN, RIGHT JO
5 min read
SQL Query Interview Questions SQL or Structured Query Language, is the standard language for managing and manipulating relational databases such as MySQL, Oracle, and PostgreSQL. It serves as a powerful tool for efficiently handling data whether retrieving specific data points, performing complex analysis, or modifying database
15+ min read
CTE in SQL In SQL, a Common Table Expression (CTE) is an essential tool for simplifying complex queries and making them more readable. By defining temporary result sets that can be referenced multiple times, a CTE in SQL allows developers to break down complicated logic into manageable parts. CTEs help with hi
6 min read
Window Functions in SQL SQL window functions are essential for advanced data analysis and database management. It is a type of function that allows us to perform calculations across a specific set of rows related to the current row. These calculations happen within a defined window of data and they are particularly useful
6 min read
SQL | WITH Clause SQL queries can sometimes be complex, especially when you need to deal with multiple nested subqueries, aggregations, and joins. This is where the SQL WITH clause also known as Common Table Expressions (CTEs) comes in to make life easier. The WITH Clause is a powerful tool that simplifies complex SQ
6 min read
SQL Exercises : SQL Practice with Solution for Beginners and Experienced SQL (Structured Query Language) is a powerful and flexible tool for managing and manipulating relational databases. Regardless of our experience level, practising SQL exercises is essential for improving our skills. Regular practice not only enhances our understanding of SQL concepts but also builds
15+ min read
SQL Cheat Sheet ( Basic to Advanced) Creating and managing databases in SQL involves various commands and concepts that handle the structuring, querying, and manipulation of data. In this guide, we will see a comprehensive cheat sheet for essential SQL operations, offering a practical reference for tasks ranging from database creation
15 min read