PHP:强制'精选'到顶部

时间:2013-06-20 21:11:44

标签: php sql

我的数据库表格中有一个名为“精选”的列,其中包含 y n

我正在尝试强制首先打印任何'Featured'=='y'(它通过foreach循环打印HTML)。

现在它只是按索引(ID)的顺序加载。

我尝试将ORDER BY Featured添加到SQL查询的末尾,但它什么也没做。

我该如何做到这一点?

我通过通用函数使用它。如何在不进行2次查询的情况下检查“精选”是否存在,我该怎么办?

它打破了不包含“精选”

的表格上的SQL

我使用switch进行设置,只根据需要更改SQL ..但如果有人知道如何混合{{1},我宁愿在SQL语句中处理这个问题。 }感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

使用更加数值的方法(如1和0),而不是使用Y和N值,这样您就可以使用数字排序。但是,如果您真的不想更改列值,那么只需执行

ORDER BY Featured DESC

因为这将把所有的Y放在第一位。

PS:在将来,你会发现最好使用布尔值(1和0),这将使你能够在将来有第3和第4场景的情况下添加利基特征(所以你可以把它设置为2和3等。)