как игнорировать пустые значения из mysql в python, чтобы заполнить список? - PullRequest
0 голосов
/ 30 марта 2020

Итак, у меня есть база данных с таблицей person, а person имеет характеристики 1-5.

мы заполняем таблицу лиц данными, мы можем добавить до 5 характеристик, но в этом нет необходимости

Так что теперь я хочу написать каждому человеку в списке его характеристики, но если характеристики пусты, те не будут видны. затем результат распечатывается мне.

Теперь я могу выдать список с людьми, но я все еще вижу пустые значения.

У кого-то есть идея исключить пустые значения, через sql или python?

edit

#we fetch the result and then write it into the lists
SQLdeckung = 'Select * from Ergebnis_Compare
deckungCursor.execute(SQLdeckung)
    result_update = deckungCursor.fetchall()
    for i in result_update:
        neueTabelleResult.append(i[0])
        neueTabelleResult.append(i[1])
        neueTabelleResult.append(i[2])
        neueTabelleResult.append(i[3])
        neueTabelleResult.append(i[4])
        neueTabelleResult.append(i[5])
    deckungCursor.execute(dropNeueTabelle)


except pysql.MySQLError as err:
    print('Fehler in DeckungsCalc' , err)

connection.commit()
deckungCursor.close()
#here we want to print out the result
messagebox.showinfo('Dies ist die Deckungsliste:', neueTabelleResult)

Ответы [ 2 ]

0 голосов
/ 02 апреля 2020

Вы можете проверить, является ли каждый элемент в записи пустым / нет, перед вставкой в ​​neueTabelleResult:

for rec in result_update:
    for item in rec:
        if item is not None and item.strip() != '':
            neueTabelleResult.append(item.strip()) 
0 голосов
/ 30 марта 2020

Вы должны отфильтровать данные в операторе SQL. Например:

SELECT * FROM Ergebnis_Compare WHERE <column-name> IS NOT NULL

Где <column-name> - столбец, содержащий характеристики человека.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...