2009-05-27 25 views
1

mysqlでは、空でないセルをどのように1行に数えますか?そして、私は、特定の列の間だけ、例えば3〜10列の間のセルを数えたいと思います。すべての列ではありません...再び、その行にのみ。mysqlクエリ

答えて

1

列は、名前だけではない数字とSQLでアプローチすることができますが、これを実行したい場合は、理論的に言えば、クエリ

0

を呼び出しているプログラミング言語でそれを行う必要があります、関係変数の属性は順不同であり、したがって、これを行うことはできません。しかし、MySQLでは、カタログの名前を取得するためにカタログを照会することができ、テーブルの列の「順序」も取得できると考えています。カラム名と順序は次のようになります。

select column_name, ordinal_position from information_schema.columns where table_name='my_table'; 

しかし、これはあまりにも助けになるとは思えません。あなたがやっていることは、悪いデータベースデザインのような匂いがします。デザインに関する何かが残念ながら時々起こることがなければ、テーブルからプログラミング言語で行を取り出すことができます。 PHPを使用し、ループを使用して、好きなセルの空でないセルを「手動で」数えます。行を配列にフェッチし、配列インデックスを指定して個々のセルにアクセスすることができます。

このようにしていただければ幸いです。間違いなく難しくないはずです。