Форматирование с плавающей запятой при вставке SQL с использованием dict

#python #sql #dictionary #sql-insert #postgresql-9.5

#python #sql #словарь #sql-вставка #postgresql-9.5

Вопрос:

я пытаюсь вставить значения из словаря в базу данных postgres с помощью инструкции SQL Insert.

Основной язык — Python.

Сначала я использовал только VARCHAR Datytype и преобразовал значения следующим образом

 insert_query = 'INSERT INTO tweets VALUES (%s, %s)'
    for tweet in tweets:
        engine.execute(insert_query, (tweet['username'], tweet['text']) 
  

На следующем шаге мне также понадобятся числовые значения для «followers_count» (например, 2345) и «sentiment_score» (например, 0,654)

Есть ли что-то вроде%f (для преобразования в float) или другой способ сделать это правильно?

Комментарии:

1. Попробуйте %f в инструкции insert или контролируйте точность, например %.2f

Ответ №1:

Попробуйте это:

 insert_query = 'INSERT INTO tweets VALUES (%s, %s, %f, %.2f)'
for tweet in tweets:
    engine.execute(insert_query, (tweet['username'], tweet['text'], tweet['floatval'], tweet['double_decimal_floatval'])