2012-05-04 16 views
-4

mysqlのデフォルト値がNULLまたは0であるため、Ajaxデータテーブルを昇順に並べ替えるのに問題があり、表示したくありません。例えば、私のテーブルに私が持っている:降順でソートうまく機能Datatables ajax sorting

item | value 
-----+------ 
    a |  2 
    b |  3 
    c |  4 
    d | NULL 

、しかし、上昇は最初の「d」を表示します、と私は、「d」はそこになりたくありません。また、これはajaxであるため、注文はdb内で直接行われるため、カスタムjsの注文は不可能と思われます。

どうすればこの問題を解決できますか?

+0

私はあなたが混ざっあなたの技術を取得していると思います。テーブルから取り出すソート順は、選択したケースによって異なります。あなたが1つの順序でテーブルに入れたからといって、それがそのように出てくるわけではありません。 Ajaxは、クライアントとサーバーの間で通信する単なる方法であるため、タイトルは絶対に意味をなさないものです。 WHERE句で表示しない値は、SQLのselect文で除外できます。 – scrappedcola

答えて

0

もしあなたがそこにいることを望まないなら、それをフィルタリングしてください。 WHERE value IS NOT NULL 質問はあまり意味がありません。私たちに現在の記録、現在の結果、期待される結果を与えた方が簡単だったでしょう。

+0

私はそれをフィルタリングする必要はありません、私はちょうどソート時に考慮されていないnull値がほしいですが、私はテーブルでそれらをしたいです。 – luqita

1

あなたはこのような方法でどのようにヌルの種類を管理することができます。

select item, value 
from ... 
order by case when value is null then 0 else 1 end descending, -- or ascending (I do not full understud your question) 
     value ascending           -- or descending (idem)