समाधान मिला
एक वर्ग बनाएं जो इस तरह FunctionElement को बढ़ाता है
from sqlalchemy.sql.expression import FunctionElement
from sqlalchemy.ext.compiler import compiles
class json_array_length(FunctionElement):
name = 'json_array_len'
@compiles(json_array_length)
def compile(element, compiler, **kw):
return "json_array_length(%s)" % compiler.process(element.clauses)
और इसे इस तरह इस्तेमाल करें
session.query(Post.id, json_array_length(Post.items))
नोट:यह पोस्टग्रेज पर काम करेगा क्योंकि इसमें 'json_array_length' फंक्शन परिभाषित है। यदि आप इसे किसी भिन्न DB के लिए चाहते हैं, तो उस फ़ंक्शन को बदलने की आवश्यकता होगी। http://docs.sqlalchemy.org/en/rel_0_9/core/compiler.html#forther-examples