簡體   English   中英

如何在SQLAlchemy的SQL表達式語言上使用JSON_OBJECTAGG編寫MySQL查詢?

[英]How do you write MySQL query using JSON_OBJECTAGG on SQLAlchemy's SQL Expression Language?

我在MySQL 8.0上使用SQLAlchemy。 我正在嘗試JSON_OBJECTAGG一個在SQL表達式語言上使用JSON_OBJECTAGG函數的查詢。 由於它是MySQL中的預定義函數,因此我想知道是否存在實現此目的的規范方法。

  • 在SQL表達式語言上使用JSON_OBJECTAGG函數組成查詢的推薦方式是什么?

使用func可以調用什么SQL函數沒有限制1 給定MySQL文檔中的示例:

 mysql> SELECT o_id, attribute, value FROM t3; +------+-----------+--------+ | o_id | attribute | value | +------+-----------+--------+ | 2 | color | red | | 2 | fabric | silk | | 3 | color | green | | 3 | shape | square | +------+-----------+--------+ 4 rows in set (0.00 sec) 

查詢:

 SELECT o_id, JSON_OBJECTAGG(attribute, value) FROM t3 GROUP BY o_id; 

將以SQLAlchemy SQL表達式語言表示為:

select([t3.c.o_id, func.json_objectagg(t3.c.attribute, t3.c.value)]).\
    group_by(t3.c.o_id)

1實際上有一些限制。 func不能輕松地使用命名符號來生成函數調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM