2013-12-19 2 views
0

Привет я работаю над проектом семестр я хочу обсудить немного проблемы здесь у меня есть таблица попробоватьКак получить результат таблицы в моем желаемом формате MYSQL

mysql> select * from try; 

+------+--------+ 
| name | course | 
+------+--------+ 
| ali | DB  | 
| ali | OOP | 
| ali | DLD | 
| ali | CS  | 
| ali | ODE | 
+------+--------+ 
5 rows in set (0.00 sec) 

здесь студент принимает 5 курсов я хочу, чтобы получить выход в формате ниже

+------+--------+ 
| name | course | 
+------+--------+ 
| ali | DB  | 
|  | OOP | 
|  | DLD | 
|  | CS  | 
|  | ODE | 
+------+--------+ 

скажите мне, пожалуйста, если я в состоянии сделать это или нет, если да, то, что запрос должен быть принят, потому что я попробовать многие связанные с JOINS, GROUP по т.д.! ! будем благодарны за вашу помощь! БЛАГОДАРЯ

+4

ли, что в вашей логике. SQL предназначен для извлечения данных. –

+0

любезно дайте мне направление или подсказку для получения желаемого результата пожалуйста !! – Ali

+0

Какой формат это? Только первая запись имеет значение в столбце имени? Тот же порядок? –

ответ

5

Попробуйте это:

SELECT IF(@temp != @temp:=A.name, A.name, '') AS name, A.course 
FROM tableA AS A, (SELECT @temp:='') AS B 
ORDER BY A.name 
+0

спасибо, что работает !! еще одна вещь, которую я хочу спросить, заключается в том, что когда у меня есть несколько учеников, которые повторяют свое имя, но курсы разные, то какая проверка я должен поставить там A.name = 'anystudent' или иначе ?? – Ali

+0

@Ali Это до вас, что вам нужно. Вы можете установить условия для достижения этого –

Смежные вопросы