Q

Concatenate into a single row

Say I have a table named "ONE" with a single column "Column1." What will be the query to display the three records concatenated into a single row?

Say I have a table named "ONE" with a single column "Column1." Let the data be as below:

Column1
-------
a
b
c

What will be the query to display the three records concatenated into a single row? I was unable to answer this question in an interview!! Thanks in advance.

What kind of a question is that?? The interviewer was clearly trying to rattle you, because that's a pretty dumb question. I would have been tempted to reply "The answer is available by inspection -- 'a,b,c'. Voila and QED. I don't write queries for trivialities. Now please ask me something serious, like the difference between surrogate and natural keys."

Okay, let's look at some solutions. Here's the answer in MySQL:

select group_concat(Column1)
  from ONE

Here's the answer in Sybase ASA:

select list(Column1)
  from ONE

If you're using any other database system, it gets a little harder. In Oracle, you can try some of these methods. Other databases require similar approaches.

This was last published in June 2006

Dig Deeper on Oracle and SQL

PRO+

Content

Find more PRO+ content and other member only offers, here.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

-ADS BY GOOGLE

SearchDataManagement

SearchBusinessAnalytics

SearchSAP

SearchSQLServer

TheServerSide

SearchDataCenter

SearchContentManagement

SearchFinancialApplications

Close