How to convert this query to the Peewee ORM?

kramer65

I'm using the (excellent) Peewee ORM for my query needs in Python and I now want to convert the following query:

select t1.created, t1.property_id, t1.requesting_user_id, t1.type, t1.response 
from pdr t1
inner join (
    select max(id) as id, property_id, requesting_user_id
    from pdr
    where property_id = 7
    group by requesting_user_id
) as t2 on t2.id = t1.id

So I came up with the following:

PDR.select()\
    .join(PDR)\
    .where(PDR.property == 7)\
    .group_by(PDR.requesting_user)

but this creates the following sql:

SELECT t1.id, t1.created, t1.property_id, t1.requesting_user_id, t1.type, t1.comment, t1.responding_user_id, t1.property_details_request_id, t1.response
FROM pdr AS t1 
INNER JOIN pdr AS t1 
ON (t1.property_details_request_id = t1.id) 
WHERE (t1.property_id = 7) 
GROUP BY t1.requesting_user_id

I tried a couple other variations, but I'm kinda stuck.

Does anybody know how I can convert my query to Peewee? All tips are welcome!

coleifer

Try the following (untested, but hopefully helpful):

PDRAlias = PDR.alias()
subq = (PDRAlias
        .select(fn.MAX(PDRAlias.id).alias('max_id'), PDRAlias.property, PDRAlias.requesting_user)
        .where(PDRAlias.property == 7)
        .group_by(PDRAlias.requesting_user)
        .alias('subq'))
query = (PDR
         .select()
         .join(subq, on=(subq.c.max_id == PDR.id)))

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

How to filter a query on Django ORM

分類Dev

How to convert sql mod to django orm?

分類Dev

how to convert mysql query to zend query?

分類Dev

How to store emoji string in Database using Laravel with Orm Query

分類Dev

How do I do date math in a Django ORM query?

分類Dev

Django ORM grouped by query

分類Dev

Why am I getting peewee.InternalError for all subsequent commands after one failed command, using peewee ORM with posgresql?

分類Dev

How to convert this meta_query to sql?

分類Dev

How to convert to Materialized view query with bind variables

分類Dev

How to convert query string to multi level object

分類Dev

How to convert mongo shell query to java basicDBObject?

分類Dev

How to convert query result object into string in CodeIgniter

分類Dev

How to convert a LINQ query result to a DataTable dynamically?

分類Dev

How to convert the objects in a query result to custom type

分類Dev

Laravel: Convert QueryBuilder to Eloquent:ORM

分類Dev

How do I write a Django ORM query for the reverse relationship in a one-to-many relationship?

分類Dev

Peewee ORMのbefore_save()フックとafter_save()フック?

分類Dev

How to convert List<Object> to POJO using JPA native Query

分類Dev

How to convert JSON to query string in angular2?

分類Dev

How to convert decode function in oracle to standard big query

分類Dev

How can we convert below normal query to Laravel DB or Elequent?

分類Dev

How can i convert this sql query in a eloquent laravel command?

分類Dev

Query Django ORM with foreign key fields

分類Dev

Laravel's Eloquent ORM versus Query Builder

分類Dev

Python Peewee ORMの2次ForeignKeyFieldのどこで選択するのですか?

分類Dev

How create fields(columns in db) from a dictionary(iterating) with peewee

分類Dev

Using CONVERT in a parameterised query

分類Dev

Convert query to count rows

分類Dev

Peewee を使用した配列に対する LIKE SQL-query

Related 関連記事

  1. 1

    How to filter a query on Django ORM

  2. 2

    How to convert sql mod to django orm?

  3. 3

    how to convert mysql query to zend query?

  4. 4

    How to store emoji string in Database using Laravel with Orm Query

  5. 5

    How do I do date math in a Django ORM query?

  6. 6

    Django ORM grouped by query

  7. 7

    Why am I getting peewee.InternalError for all subsequent commands after one failed command, using peewee ORM with posgresql?

  8. 8

    How to convert this meta_query to sql?

  9. 9

    How to convert to Materialized view query with bind variables

  10. 10

    How to convert query string to multi level object

  11. 11

    How to convert mongo shell query to java basicDBObject?

  12. 12

    How to convert query result object into string in CodeIgniter

  13. 13

    How to convert a LINQ query result to a DataTable dynamically?

  14. 14

    How to convert the objects in a query result to custom type

  15. 15

    Laravel: Convert QueryBuilder to Eloquent:ORM

  16. 16

    How do I write a Django ORM query for the reverse relationship in a one-to-many relationship?

  17. 17

    Peewee ORMのbefore_save()フックとafter_save()フック?

  18. 18

    How to convert List<Object> to POJO using JPA native Query

  19. 19

    How to convert JSON to query string in angular2?

  20. 20

    How to convert decode function in oracle to standard big query

  21. 21

    How can we convert below normal query to Laravel DB or Elequent?

  22. 22

    How can i convert this sql query in a eloquent laravel command?

  23. 23

    Query Django ORM with foreign key fields

  24. 24

    Laravel's Eloquent ORM versus Query Builder

  25. 25

    Python Peewee ORMの2次ForeignKeyFieldのどこで選択するのですか?

  26. 26

    How create fields(columns in db) from a dictionary(iterating) with peewee

  27. 27

    Using CONVERT in a parameterised query

  28. 28

    Convert query to count rows

  29. 29

    Peewee を使用した配列に対する LIKE SQL-query

ホットタグ

アーカイブ