w3resource

AdventureWorks Database: Returns all contact first names with the characters reversed

SQL Query - AdventureWorks: Exercise-69 with Solution

69. From the following table write a SQL query to retrieve all contact first names with the characters inverted for people whose businessentityid is less than 6.

Sample table: Person.Person
businessentityid|persontype|namestyle|title|firstname               |middlename      |lastname              |suffix|emailpromotion|additionalcontactinfo|demographics|rowguid                             |modifieddate           |
----------------+----------+---------+-----+------------------------+----------------+----------------------+------+--------------+---------------------+------------+------------------------------------+-----------------------+
               1|EM        |false    |     |Ken                     |J               |Sánchez               |      |             0|                     |[XML]       |92c4279f-1207-48a3-8448-4636514eb7e2|2009-01-07 00:00:00.000|
               2|EM        |false    |     |Terri                   |Lee             |Duffy                 |      |             1|                     |[XML]       |d8763459-8aa8-47cc-aff7-c9079af79033|2008-01-24 00:00:00.000|
               3|EM        |false    |     |Roberto                 |                |Tamburello            |      |             0|                     |[XML]       |e1a2555e-0828-434b-a33b-6f38136a37de|2007-11-04 00:00:00.000|
               4|EM        |false    |     |Rob                     |                |Walters               |      |             0|                     |[XML]       |f2d7ce06-38b3-4357-805b-f4b6b71c01ff|2007-11-28 00:00:00.000|
               5|EM        |false    |Ms.  |Gail                    |A               |Erickson              |      |             0|                     |[XML]       |f3a3f6b4-ae3b-430c-a754-9f2231ba6fef|2007-12-30 00:00:00.000|
               6|EM        |false    |Mr.  |Jossef                  |H               |Goldberg              |      |             0|                     |[XML]       |0dea28fd-effe-482a-afd3-b7e8f199d56f|2013-12-16 00:00:00.000|
               7|EM        |false    |     |Dylan                   |A               |Miller                |      |             2|                     |[XML]       |c45e8ab8-01be-4b76-b215-820c8368181a|2009-02-01 00:00:00.000|
               8|EM        |false    |     |Diane                   |L               |Margheim              |      |             0|                     |[XML]       |a948e590-4a56-45a9-bc9a-160a1cc9d990|2008-12-22 00:00:00.000|
               9|EM        |false    |     |Gigi                    |N               |Matthew               |      |             0|                     |[XML]       |5fc28c0e-6d36-4252-9846-05caa0b1f6c5|2009-01-09 00:00:00.000|
			   -- more --

Click to view Full table

Sample Solution:

-- Selecting the 'FirstName' column and reversing its characters, and aliasing the reversed string as "Reverse"
SELECT FirstName, REVERSE(FirstName) AS Reverse  

-- From the Person schema's Person table
FROM Person.Person  

-- Filtering the results to include only rows where the 'BusinessEntityID' is less than 6
WHERE BusinessEntityID < 6 

-- Ordering the result set alphabetically by the 'FirstName' column
ORDER BY FirstName;

Explanation:

  • The SQL query retrieves data from the Person table within the Person schema.
  • It selects the 'FirstName' column.
  • The REVERSE() function reverses the characters of the 'FirstName' column.
  • The result of the REVERSE() function is aliased as "Reverse".
  • The WHERE clause filters the results to include only rows where the value of the 'BusinessEntityID' column is less than 6.
  • The result set is ordered alphabetically by the 'FirstName' column.
  • Comments are provided for each code line to explain the purpose and functionality of the code.

Sample Output:

firstname|reverse|
---------+-------+
Gail     |liaG   |
Ken      |neK    |
Rob      |boR    |
Roberto  |otreboR|
Terri    |irreT  |

SQL AdventureWorks Editor:

Practice Online


Contribute your code and comments through Disqus.

Previous: Repeat a zero four times in front of a production line.
Next: Return rightmost eight characters from product name.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.