0

mysqlクエリを実行していて、インデックス値を自動インクリメントすることで結果を並べ替えようとしています。このコードでクエリを実行しています。

 $query = mysql_query("SELECT * FROM chanels WHERE videolocation != '' ORDER BY index DESC ");

これは、ORDER BY関数を追加する前は機能していましたが、mysql_num_rowsテストを実行すると、0行が返されます。何かアイデアがありましたらありがとうございます。

4

2 に答える 2

10

列が呼び出されていることを確認しますindexか?これは予約語であるため、列名の理想的な選択ではありません。通常、自動インクリメント列は呼び出されるidか、同様のものである必要があります。

本当に列呼び出した場合indexは、SQLクエリでバッククォートを使用して列を引用する必要があります。

SELECT * FROM chanels
WHERE videolocation != ''
ORDER BY `index` DESC
于 2012-08-22T06:18:18.743 に答える
0

このように夜のコードを編集する

 $query = mysqli_query("SELECT * FROM chanels 
                        WHERE videolocation != '' 
                        ORDER BY 'index' desc");

それがあなたを助けるかもしれません

于 2012-08-22T11:05:59.110 に答える