如何使用空列值对mysql表进行排序

如何使用空列值对mysql表进行排序,mysql,mysqli,Mysql,Mysqli,我有一个具有以下模式的表。我需要按点对表进行排序,如果行将img_link存在(非空),则也将首先出现。只需按int列排序,然后按varchar列排序 需要这样的结果吗 +-----+ | id | +-----+ | 12 | +-----+ | 11 | +-----+ | 14 | +-----+ | 13 | +-----+ 提前感谢..试试这个: select * from tabalename where img_link is not null order by poi

我有一个具有以下模式的表。我需要按点对表进行排序,如果行将img_link存在(非空),则也将首先出现。只需按int列排序,然后按varchar列排序

需要这样的结果吗

+-----+
| id  |
+-----+
| 12  |
+-----+
| 11  |
+-----+
| 14  |
+-----+
| 13  |
+-----+
提前感谢..

试试这个:

select * from tabalename where img_link is not null order by point desc union select * from tabalename where img_link is null order by point desc
试试这个:

select * from tabalename where img_link is not null order by point desc union select * from tabalename where img_link is null order by point desc
试试这个

SELECT * FROM table_name ORDER BY points DESC ,ISNULL(img_link), img_link 
试试这个

SELECT * FROM table_name ORDER BY points DESC ,ISNULL(img_link), img_link 

你基本上用文字写下了你需要做的事情

SELECT id FROM someTable ORDER BY points DESC, img_link DESC;

你基本上用文字写出了你需要做的事情

SELECT id FROM someTable ORDER BY points DESC, img_link DESC;
另一种方法是

select *
from table
order by `points` desc,
if(img_link = '' or img_link is null,1,0)

另一种方法是

select *
from table
order by `points` desc,
if(img_link = '' or img_link is null,1,0)

“先按int列排序,然后按varchar列排序”您实际尝试过吗?“先按int列排序,然后按varchar列排序”,您实际尝试过吗?