ホームページ >データベース >mysql チュートリアル >SQLAlchemy で VALUES 句をシミュレートするにはどうすればよいですか?

SQLAlchemy で VALUES 句をシミュレートするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-24 18:51:20535ブラウズ

How Can I Simulate a VALUES Clause in SQLAlchemy?

SQLAlchemy の VALUES 句

リレーショナル データベースを操作する場合、VALUES 句は一時テーブルまたは「インライン」データを定義するためによく使用されます。クエリ内のソース。これは、複数のソースからのデータを結合したり、分析用の一時データセットを作成したりするなど、さまざまなシナリオで役立ちます。

SQLAlchemy では、VALUES 句は直接 SQL クエリと同じようにネイティブにサポートされていません。ただし、SQLAlchemy のコア API を使用して同等の機能を実現できる回避策があります。

VALUES 句を使用したクエリの構築

次の SQLAlchemy クエリを作成するには指定された SQL ステートメントの機能を複製します:

SELECT * FROM (VALUES (1, 2, 3)) AS sq;

次を使用できます。コード:

from sqlalchemy import select, column, Integer
from sqlalchemy.sql import Values

query = select(Values(column('Number', Integer), name='sq').data([(1,), (2,), (3,)]))

このコード内:

  • Values は、名前付き列を使用してテーブル値式を表す SQLAlchemy Core クラスです。
  • のデータ メソッドValues オブジェクトはインライン データを設定するために使用されます。
  • Number 列は整数として定義されます。 type.
  • インライン ソースの名前は、name 引数を使用して sq です。

このクエリを実行すると、それぞれに という名前の 1 つの列を持つ 3 つの行を含む結果セットが得られます。それぞれ値 1、2、および 3 を含む数値。 VALUES 句は SQLAlchemy の公式ドキュメントで広く文書化されていないことに注意することが重要です。ただし、さらに詳しい情報については、https://github.com/sqlalchemy/sqlalchemy/blob/master/test/sql/test_values.py のテスト ケースを参照してください。

以上がSQLAlchemy で VALUES 句をシミュレートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。