Как выбрать значения из базы данных, которые не равны нулю?

Как получить вывод заказов из таблицы SQL, отображая только те значения, которые не равны NULL? Вот мой текущий код: 

```python
back = types.InlineKeyboardMarkup(row_width=2)
bac = types.InlineKeyboardButton("Запросить код✅", callback_data='zap')
back.add(bac)
conn = sqlite3.connect('users.db')
cursor = conn.cursor()
cursor.execute('SELECT zakaz FROM users')
while True:
    us_id = cursor.fetchone()
    
    if us_id == None:
        break
    elif us_id != None:
        id = us_id[0]
        id != None
        print(id)
```

Как я могу настроить код так, чтобы выводились только те заказы, которые не равны NULL?
  • 4 мая 2024 г. 13:51
Ответы на вопрос 2
Для выборки только значений из базы данных, которые не равны NULL, вы можете добавить условие в ваш SQL запрос. Вот как это можно сделать:

```python
back = types.InlineKeyboardMarkup(row_width=2)
bac = types.InlineKeyboardButton("Запросить код✅", callback_data='zap')
back.add(bac)
conn = sqlite3.connect('users.db')
cursor = conn.cursor()
cursor.execute('SELECT zakaz FROM users WHERE zakaz IS NOT NULL') # Добавляем условие WHERE zakaz IS NOT NULL
result = cursor.fetchall() # Получаем все строки, удовлетворяющие условию

for row in result:
    id = row[0]
    print(id)
```

В этом примере, запрос SQL был изменен на `'SELECT zakaz FROM users WHERE zakaz IS NOT NULL'`, чтобы выбрать только те строки, где значение в столбце `zakaz` не равно NULL. С помощью `cursor.fetchall()` мы получаем все такие строки и используем цикл `for` для итерации по ним и вывода значений.
<blockquote><b>Как выводить</b> значения из базы данных, которые <b>не равны нулю</b></blockquote> <br/> <br/> <blockquote>как сделать чтоьв <b>выводило</b> значения которые <b>не равны Ничему</b></blockquote> <br/> <br/> Товарищ, определитесь! <br/> <br/> Еще было бы неплохо в вопросе обозначить какие поля есть в таблице, какие типы у этих полей и по каким из них считаем что не равны нулю <br/> <br/> Если опираться только на код, то нужно что-то вроде <br/> <br/> <pre><code class="sql">SELECT zakaz FROM users
where zakaz not null</code></pre> <br/> <br/> (если в поле может быть записано значение 0 или пустая строка то можно добавить <pre><code class="sql">and zakaz != 0 (если поле целочисленное)
and zakaz != "" (если поле символьное)</code></pre> ) <br/> <br/> PS <br/> Еще, мне кажется что-то не то со структурой БД если айди заказа хранится в таблице users
Похожие вопросы