【问题标题】:How to get rid of null values in my GridDB database?如何摆脱我的 GridDB 数据库中的空值?
【发布时间】:2021-08-10 13:37:05
【问题描述】:

我有一个 GridDB 容器,用于在我的 Student Management 应用程序 中实施的 sqllite 数据库,但我需要 GET RID数据库上的 NULL 值。如何删除行而不使它们出现在应用程序上? 我试过 这是应用程序外观示例的图片。Five rows showing two NULL values

import pandas as pd
import griddb_python as griddb
from kivy.metrics import dp
from kivy.uix.anchorlayout import AnchorLayout
from kivymd.app import MDApp
from kivymd.uix.datatables import MDDataTable
from kivymd.uix.label import MDLabel
import sqllite3

factory = griddb.StoreFactory.get_instance()

try:
    gridstore = factory.get_store(host="127.0.0.1", port="8080", 
            cluster_name="Cluster12", username="root", 
            password="")
    conInfo = griddb.ContainerInfo("Students_DB",
                    [              
                     ["Student ID", griddb.Type.INTEGER],
                     ["First Name", griddb.Type.STRING],
                     ["Last Name", griddb.Type.STRING],
                     ["Gender", griddb.Type.STRING,
                     ["DOB", griddb.Type.STRING],
                     ["Current Year", griddb.Type.INTEGER],
                     ["CGPA", griddb.Type.FLOAT],
                    ],
                    griddb.ContainerType.COLLECTION, True)
    con = gridstore.put_container(conInfo)   
    # Reading Database into a Pandas DataFrame
    container = sqlite3.connect("StudentsDB.db")
    df = pd.read_sql_query("SELECT * from best_students", container)


    # Adding the database
    for i in range(len(df)):
        ret = con.put(df.iloc[i, :])

except Exception as e:
    print(e)

sql_statement = ('SELECT * FROM Students_DB')
sql_query = pd.read_sql_query(sql_statement, con)

class Students(MDApp):
    def build(self):
        layout = AnchorLayout()
        title = MDLabel(
                            text = "Students Record Management(SRM)",
                            theme_text_color = "Custom",
                            text_color = (0, 0, 0, 1),
                            pos_hint = {"center_x": .5, "center_y": .8},
                            size_hint_x = 1,
                            halign = "center"
            )
#...

【问题讨论】:

    标签: python mysql desktop-application griddb


    【解决方案1】:

    我不确定您要在哪个位置删除 NULL 值。 但 griddb 语法接受在查询中使用此语法删除 null:

    SELECT * from best_students where <columnName> IS NOT NULL

    记住将 columnName 更改为您希望从中删除 NULL 的任何列。

    [编辑] 我后来看到了你的图像。 如果你想从 Last Name 中删除 NULL,你应该这样写:

    SELECT * from best_students where 'Last Name' IS NOT NULL

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-27
      • 1970-01-01
      • 2016-07-24
      • 1970-01-01
      • 2010-11-08
      • 2010-10-12
      相关资源
      最近更新 更多