Écrivez et exécutez SQL directement dans Elixir

Lorsque vous utilisez Elixir, un type d'ORM Python, je laisserai un moyen lorsque vous aurez besoin d'écrire SQL directement.

code

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from elixir import *

days = 10

metadata.bind = "mysql://userid:[email protected]/test"
setup_all()

sql   = """ 
SELECT DATE_FORMAT( NOW() - INTERVAL %(days)s DAY, '%%Y-%%m-%%d' ) date,
       DATE_FORMAT( NOW(), '%%Y-%%m-%%d' ) today
  FROM DUAL
"""
conn   = metadata.bind.engine.connect()
result = conn.execute( sql, { "days": days } ) 

for row in result:
    print "%s%il y a j jours: %s" % ( row.today, days, row.date )

Le résultat de l'exécution est le suivant.

2014-04-18 il y a 10 jours: 2014-04-08

Supplément

La réalité est que vous utilisez l'API SQL Alchemy qu'Elixir enveloppe.

Il peut être plus facile à utiliser si vous savez comment exécuter SQL en utilisant d'anciens espaces réservés.

Matériel de référence

Recommended Posts

Écrivez et exécutez SQL directement dans Elixir
Ecrire le fichier O_SYNC en C et Python
Lire et écrire des fichiers JSON avec Python
Charger et exécuter la commande depuis yml avec python
Il est facile d'exécuter SQL avec Python et de générer le résultat dans Excel
Lire et écrire en virgule flottante simple précision en Python
Écrire des tests en Python pour profiler et vérifier la couverture
Lire et écrire des balises NFC avec python en utilisant PaSoRi
Exécuter des fonctions en parallèle
Ecrire DCGAN avec Keras
Écrire un décorateur en classe
Ecrire Python dans MySQL
Comment exécuter des commandes et des scripts shell externes en python