如何在mysql中按升序生成值?

时间:2012-10-02 05:02:51

标签: php mysql select-query

我希望这种类型的输出从数据库中获取task_name,就像这种格式

一样
Task 10 Task 2 Task 3 Task 5........

我的查询

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

所以我想这样输出..

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

3 个答案:

答案 0 :(得分:1)

使用此

"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"   

答案 1 :(得分:0)

使用此

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

而不是

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

答案 2 :(得分:0)

"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 "

按升序排序