查询以使用DISTINCT正确排序年份

时间:2015-08-18 09:56:03

标签: mysql sql yii

我有一个Yii模型,我用它来返回以下的sql查询。

SELECT DISTINCT t.year_id
FROM
`myuser` `t`
INNER JOIN organisation o ON (t.organisation_id = o.organisation_id)
WHERE o.organisation_id = 12345
ORDER BY t.year_id ASC

返回以下内容:

year_id
  10
  15
  2
  7
  9

如何更改此内容,以便在2,7,9,10,15的顺序中显示此内容?注意 - 该行是varchar数据类型,因为它有一些字符串,例如托儿所,接待等。

2 个答案:

答案 0 :(得分:0)

您可以使用此

ORDER BY CONVERT(t.year_id,UNSIGNED INTEGER) ASC

答案 1 :(得分:0)

只需将其转换为数字,作为VARCHAR,它是按字典排序的

ORDER BY convert(t.year_id, decimal)