How do i return multiple columns from a table ?
My Course table:
| Course | PersId | Taskid | Status |
Computer < > User1 <> 1 < > confirmed
Computer < >User2 <> 1 <> unconfirmed
Computer < >User3 <> 1 <> unconfirmed
Computer < >User1 <> 2 <> confirmed
Computer < >User2 <> 2 <> confirmed
Computer < >User3 <> 2 <> unconfirmed
I want it to return like this:
| PersId | Task_1 | Task_2 |
User1 <> confirmed < > confirmed
User2 <> unconfirmed <> confirmed
User3 <> unconfirmed <> unconfirmed
Question 2:
There are other courses(math, english etc) in my table with more tasks than two. Do i need to use some kind of iteration to return the task columns ? because i dont want to make a SQL query for each single course(over 100).
thanks in advance
You can use a
CASEand an aggregate:If you want to include the course info:
See SQL Fiddle with Demo
If you have an unknown number of tasks, then you can use a prepared statement to generate this dynamically:
See SQL Fiddle with Demo