因此在我的数据库中,某些行具有NULL值,当我从表中选择*时,该NULL值也显示为文本“ null”。所以我想隐藏所有NULL值。有人有查询的主意吗?谢谢!
这是我在数据库中的输入:
db.execSQL("CREATE TABLE IF NOT EXISTS table (name VARCHAR, kg VARCHAR, pod VARCHAR,reps VARCHAR, time VARCHAR );"); db.execSQL("INSERT INTO table VALUES('name 1',NULL,NULL , NULL , '"+s+"');"); db.execSQL("INSERT INTO table VALUES(NULL,'S 1','"+ee5+"' , '"+ee+"' , '"+s+"');"); db.execSQL("INSERT INTO table VALUES(NULL,'S 2','"+ee6+"' , '"+ee2+"', '"+s+"');"); db.execSQL("INSERT INTO table VALUES(NULL,'S 3','"+ee7+"' , '"+ee3+"', '"+s+"');"); db.execSQL("INSERT INTO table VALUES(NULL,'S 4','"+ee8+"' , '"+ee4+"', '"+s+"');");
这是您要寻找的:
SELECT x, y, etc, CASE WHEN field IS NOT NULL THEN field ELSE '' END AS hehe FROM table;
编辑 :添加到您的评论中,一旦您知道如何对一列进行操作,这将非常简单。对所有列应用相同的内容。因此,不要指望家庭作业能完成,而要指望最终能解决您自己的问题的帮助。
顺便说一句,这是如何..
SELECT COALESCE(name, ''), COALESCE(kg, ''), COALESCE(pod, ''), COALESCE(reps, ''), COALESCE(time, '') FROM table
您在此线程中有3种不错的方法(包括我的方法),我个人觉得其他两种更直观。通过应用与我所示相同的逻辑来使用any。