我试图通过ASC或DESC使用以下select语句来命令我的结果。
$query = "SELECT filmcode, FilmName, Genre FROM film WHERE Genre = '".$genre_value."' ORDER by '".$order_value."' ASC";
表格正确加载但是属性没有订购ASC,有人可以帮我找出select语句的错误吗?
答案 0 :(得分:1)
该语句没有正确排序记录,因为列名用单引号括起来。删除引号,它肯定会起作用:
$query = "SELECT filmcode, FilmName, Genre FROM film WHERE Genre = '$genre_value' ORDER by $order_value ASC";
如果$order_value
是列名,则可以使用反引号进行转义,如果它恰好是保留关键字。列名和表名是标识符。单引号使标识符成为字符串文字,导致order by子句出现意外行为。