관련 테이블의 Django 쿼리 합계 값

Tadalendas

두 개의 테이블이 있습니다.

티켓 테이블

id  paid_with_tax
1   5
2   6
3   7

티켓 조정 테이블

id  ticket_id  value_with_tax
1   1          2
2   1          1
3   1          2
4   1          3
5   2          5

내가 사용하는 쿼리 :

use = 0

Ticket.objects.all().annotate(
   paid_amount=Sum(
        F('paid_with_tax') +
        Coalesce(F('ticketadjustment__value_with_tax'), 0) * use
    )
)

쿼리는 다음을 반환합니다.

[
    {id: 1, paid_amount: 7},
    {id: 1, paid_amount: 6},
    {id: 1, paid_amount: 7},
    {id: 1, paid_amount: 8},
    {id: 2, paid_amount: 11},
    {id: 3, paid_amount: 7},
]

그러나 Ticket Table id = 1 값이 TicketAdjustment Table 값에 의해 중복되므로 위의 내용은 올바르지 않습니다.

TicketAdjustment Table 값을 합산하고 다음을 반환하는 쿼리를 어떻게 얻을 수 있습니까?

[
    {id: 1, paid_amount: 13},
    {id: 2, paid_amount: 11},
    {id: 3, paid_amount: 7},
]
Wilfried

여기에 문제에 대한 해결책이 있습니다.

Ticket.objects.all().annotate(
   paid_amount=(F('paid_with_tax') +
        Sum(Coalesce(F('ticketadjustment__value_with_tax'), 0))
    )
).values_list('id', 'paid_amount')

values_list 결과에서 원하는 필드를 선택하십시오.

귀하의 기본 요청에는 큰 문제가 있습니다.

Sum(F('paid_with_tax') + Coalesce(F('ticketadjustment__value_with_tax'), 0) * use)

이것은 value_with_tax0으로 miltiply ligne . 그러니 0을주세요. 다음과 같습니다.

Sum(F('paid_with_tax'))

당신 value_with_tax은 각 티켓 대한 합계를 원합니다 Sum.

Sum(Coalesce(F('ticketadjustment__value_with_tax'), 0)) 

그리고 값을 추가 한 후 paid_with_tax

NB : use모르겠다는 것이 목표이기 때문에 변수를 제거합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Rails 쿼리 관련 테이블 열 값

분류에서Dev

일대 다 관계로 Django 테이블에서 관련 필드 쿼리

분류에서Dev

Rails : 관련 테이블에서 쿼리 최대 값 최적화

분류에서Dev

Django : 관련 테이블에 대한 동적 Q 쿼리 작성

분류에서Dev

MySQL 쿼리 : 관련없는 두 테이블에서 합계 가져 오기

분류에서Dev

다른 테이블의 합계 값으로 쿼리 선택

분류에서Dev

관련 테이블에서 두 번 계산하는 mysql 쿼리

분류에서Dev

상위 하위 관계에 대한 테이블의 값을 집계하고 업데이트하는 Spark 쿼리

분류에서Dev

두 테이블의 값으로 쿼리의 값 계산

분류에서Dev

Filemaker : 관련 테이블의 값

분류에서Dev

조건이 관련 테이블에있는 테이블에서 값을 선택하는 SQL 쿼리

분류에서Dev

송장 애플리케이션을 위해 Django의 두 테이블에서 총 값을 계산합니다.

분류에서Dev

MYSQL 쿼리는 ID가 있는지 확인하고 열 행 값을 다른 테이블 관련 열 이름으로 복사합니다.

분류에서Dev

관련없는 테이블에서 단 1 행의 2 개의 쿼리 결과를 결합하는 방법

분류에서Dev

MS SQL은 하나의 쿼리로 동일한 테이블에서 관련 데이터를 검색합니다.

분류에서Dev

ForeignField와 관련된 테이블을 통한 Django 집계

분류에서Dev

Sequelize : 2 개 이상의 테이블 관계에 대한 OR 쿼리

분류에서Dev

Laravel 7 쿼리 관계 테이블

분류에서Dev

Laravel "where"관계 테이블 쿼리

분류에서Dev

Django Query Optimization은 관련 필드의 관련 필드를 계산합니다.

분류에서Dev

관련 테이블의 데이터를 가져 오는 쿼리

분류에서Dev

테이블에있는 15 개 레코드의 마지막 쿼리이지만 관련 테이블의 데이터를 포함합니다.

분류에서Dev

다 대다 관계의 MySQL 쿼리 테이블

분류에서Dev

MySQL-관련 계단식 쿼리 집합에 대한 최적의 인덱스

분류에서Dev

관련없는 테이블 Power BI 드릴 스루의 Max () 값을 기반으로 계산 된 테이블을 만들려고합니다.

분류에서Dev

맵의 값을 맵의 첫 번째 키에 병합하는 것과 관련된 쿼리

분류에서Dev

다른 월 및 합계 값에 대해 동일한 테이블의 두 쿼리를 결합합니다.

분류에서Dev

SQL 쿼리-값의 그룹 및 합계

분류에서Dev

행 mysql 쿼리의 합계 값

Related 관련 기사

  1. 1

    Rails 쿼리 관련 테이블 열 값

  2. 2

    일대 다 관계로 Django 테이블에서 관련 필드 쿼리

  3. 3

    Rails : 관련 테이블에서 쿼리 최대 값 최적화

  4. 4

    Django : 관련 테이블에 대한 동적 Q 쿼리 작성

  5. 5

    MySQL 쿼리 : 관련없는 두 테이블에서 합계 가져 오기

  6. 6

    다른 테이블의 합계 값으로 쿼리 선택

  7. 7

    관련 테이블에서 두 번 계산하는 mysql 쿼리

  8. 8

    상위 하위 관계에 대한 테이블의 값을 집계하고 업데이트하는 Spark 쿼리

  9. 9

    두 테이블의 값으로 쿼리의 값 계산

  10. 10

    Filemaker : 관련 테이블의 값

  11. 11

    조건이 관련 테이블에있는 테이블에서 값을 선택하는 SQL 쿼리

  12. 12

    송장 애플리케이션을 위해 Django의 두 테이블에서 총 값을 계산합니다.

  13. 13

    MYSQL 쿼리는 ID가 있는지 확인하고 열 행 값을 다른 테이블 관련 열 이름으로 복사합니다.

  14. 14

    관련없는 테이블에서 단 1 행의 2 개의 쿼리 결과를 결합하는 방법

  15. 15

    MS SQL은 하나의 쿼리로 동일한 테이블에서 관련 데이터를 검색합니다.

  16. 16

    ForeignField와 관련된 테이블을 통한 Django 집계

  17. 17

    Sequelize : 2 개 이상의 테이블 관계에 대한 OR 쿼리

  18. 18

    Laravel 7 쿼리 관계 테이블

  19. 19

    Laravel "where"관계 테이블 쿼리

  20. 20

    Django Query Optimization은 관련 필드의 관련 필드를 계산합니다.

  21. 21

    관련 테이블의 데이터를 가져 오는 쿼리

  22. 22

    테이블에있는 15 개 레코드의 마지막 쿼리이지만 관련 테이블의 데이터를 포함합니다.

  23. 23

    다 대다 관계의 MySQL 쿼리 테이블

  24. 24

    MySQL-관련 계단식 쿼리 집합에 대한 최적의 인덱스

  25. 25

    관련없는 테이블 Power BI 드릴 스루의 Max () 값을 기반으로 계산 된 테이블을 만들려고합니다.

  26. 26

    맵의 값을 맵의 첫 번째 키에 병합하는 것과 관련된 쿼리

  27. 27

    다른 월 및 합계 값에 대해 동일한 테이블의 두 쿼리를 결합합니다.

  28. 28

    SQL 쿼리-값의 그룹 및 합계

  29. 29

    행 mysql 쿼리의 합계 값

뜨겁다태그

보관