Pergunta

Quero que este tipo de saída busque task_name do banco de dados como neste formato

Task 10 Task 2 Task 3 Task 5........

Minha consulta é

 SELECT task_name, section_name, ref_student_id
 FROM scores
 WHERE ref_student_id = '".$studentid."'
    AND section_name = 'sm1'
 GROUP BY task_name

Então eu quero produzir assim ..

 Task 2 Task 3 Task 5 Task 10........
Foi útil?

Solução

usa isto

"SELECT task_name, section_name, ref_student_id
 FROM scores
WHERE ref_student_id = '1'
AND section_name = 'sm1'
GROUP BY task_name
ORDER BY cast( SUBSTRING( task_name, 5 ) AS unsigned ) ASC"   

Outras dicas

"select task_name,section_name,ref_student_id from scores where ref_student_id = '".$studentid."' and section_name = 'sm1' GROUP BY task_name order by task_name ASC "

Ordenar por ordem crescente

usa isto

SELECT task_name, section_name, ref_student_id
FROM scores
WHERE ref_student_id = '".$studentid."'
AND section_name = 'sm1'
ORDER BY ltrim(task_name) ASC          //order by should come for ordering....
GROUP BY task_name

em vez de

SELECT task_name, section_name, ref_student_id
FROM scores
WHERE ref_student_id = '".$studentid."'
AND section_name = 'sm1'
GROUP BY task_name
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top