[英]How can I write conditional clauses using SQLAlchemy's expression language?
[英]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中的預定義函數,因此我想知道是否存在實現此目的的規范方法。
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.