Django Aggregation & Annotation / values() and values_list() functions

Поделиться
HTML-код
  • Опубликовано: 3 фев 2025

Комментарии • 73

  • @bugbytes3923
    @bugbytes3923  9 месяцев назад +2

    Playlist link: ruclips.net/video/EsBqIZmR2Uc/видео.html

  • @motaz1701
    @motaz1701 3 дня назад +1

    Really many thanks about this useful tutorials

  • @rhysjesett99
    @rhysjesett99 Год назад +20

    These are genuinely some of the most helpful tutorials on the Internet.
    No fluff, just constant gold.

    • @bugbytes3923
      @bugbytes3923  Год назад +1

      Wow, thanks a lot! Delighted to hear that!

  • @XzibiTP
    @XzibiTP 2 месяца назад +3

    I have watched so many tutorials and yours is the best i have come across. Its detailed easy to understand and structured. Keep the good work up. Thanks

    • @bugbytes3923
      @bugbytes3923  2 месяца назад

      That's incredible, thank you for sharing! Amazing to hear that.

  • @hemrajkaliraman1
    @hemrajkaliraman1 4 месяца назад +3

    Best series on Django advance topics. I have improved the performance of my project a lot. you are doing a great job creating a lot of value.

    • @bugbytes3923
      @bugbytes3923  4 месяца назад

      Thanks a lot, glad to hear it, cheers!

  • @gigi123-hp3
    @gigi123-hp3 2 месяца назад +1

    Never seen a tutorial so well explained...❤

  • @DecodingTruth101
    @DecodingTruth101 Месяц назад +1

    Highly appreciate your in depth explanation and usage ,Thankyou

    • @bugbytes3923
      @bugbytes3923  Месяц назад

      @@DecodingTruth101 thanks a lot, appreciate it!

  • @Rinpower
    @Rinpower 2 месяца назад

    very helpful, that's exactly what I was looking for, thanks again bro !!

  • @khunjohn1054
    @khunjohn1054 Год назад +3

    As usual, great tutorial. I hope that in the next video you include OuterRef and Subquery. This is a more advanced topic, but it packs a ton of functionality. ie. Let's say you have a company with many offices and one of those offices is market as the HQ. With OuterRef and Subquery, you can annotate the company address from the specific office in the many to one related table marked as the HQ and also aggregate the total amount of employees as a Sum of each office.

    • @bugbytes3923
      @bugbytes3923  Год назад

      Thank you! I'll cover these topics very soon - not the next video but the one after, I think. But yeah, will definitely cover it!

  • @the_code_js
    @the_code_js Месяц назад

    The best teacher, thank you so much.

  • @codedjango
    @codedjango Год назад +3

    Very nice explanation on aggregate and annotate.....thank you so much

  • @seydinaoumarsamabaly1806
    @seydinaoumarsamabaly1806 Год назад +1

    I just want to thank you Master 🙌🏾before I finish watching the tutorial !

  • @robhafemeister3100
    @robhafemeister3100 Год назад +1

    Great video! you explained in less than an hour what probably took me a week to learn on my own awhile back. Love it!

    • @bugbytes3923
      @bugbytes3923  Год назад

      Thanks a lot Rob, much appreciated as always!

  • @DhavalAhir10
    @DhavalAhir10 Год назад +1

    Amazing every concept clear.
    Love from India bro. ✌️

    • @bugbytes3923
      @bugbytes3923  Год назад

      Thanks a lot bro! Glad it was clear and greetings from Scotland!

  • @Peterstavrou
    @Peterstavrou Год назад

    This series has been incredible!

  • @diegofunes1802
    @diegofunes1802 6 месяцев назад

    Excellent video! Many thanks!

  • @repotranstech
    @repotranstech Год назад +1

    Thanks 👍 for this tutorial.I have a microfinance project that will require this.

  • @ShivaR-k9b
    @ShivaR-k9b Год назад +1

    awesome content Mate!! I learned many new concepts in this video and will try to apply in my projects too 😁

    • @bugbytes3923
      @bugbytes3923  Год назад

      Awesome, thanks a lot, glad you liked the video!

  • @farzadmf
    @farzadmf Год назад +1

    SUPER high quality video as always; great job!

  • @paulwanjohi2537
    @paulwanjohi2537 10 месяцев назад

    Incredible. That was so helpful. Thank you man👊

    • @bugbytes3923
      @bugbytes3923  10 месяцев назад

      Thanks a lot man! Glad it helped.

  • @vaibhavbijapur6037
    @vaibhavbijapur6037 Год назад

    bro you deserve more followers

  • @thokozanindlovu1939
    @thokozanindlovu1939 Год назад

    Another brilliant video. thank you

  • @ChandlerWright-m8x
    @ChandlerWright-m8x Год назад +1

    Nice plants as well as the video

  • @UzairAhmad.
    @UzairAhmad. 18 дней назад +1

    good work.

  • @DavidLuiz-y2h
    @DavidLuiz-y2h Год назад +1

    Thanks for great videos

    • @bugbytes3923
      @bugbytes3923  Год назад

      You’re welcome, thanks a lot for watching!

  • @ndifrekeumoren3548
    @ndifrekeumoren3548 Месяц назад +1

    Thanks 👍

    • @bugbytes3923
      @bugbytes3923  Месяц назад +1

      @@ndifrekeumoren3548 thanks for watching!

  • @priyanshvatsal9791
    @priyanshvatsal9791 9 месяцев назад +1

    So much useful information in just one video. Thanks

    • @bugbytes3923
      @bugbytes3923  8 месяцев назад

      Glad to hear it, thanks a lot for watching and commenting!

  • @anatoliyloboda4601
    @anatoliyloboda4601 Год назад

    It's a very interesting and important part of working with DB. Thank you for sharing!!!

  • @Septumsempra8818
    @Septumsempra8818 Год назад +1

    Great tutorial.
    Any caching vids coming?

    • @bugbytes3923
      @bugbytes3923  Год назад +1

      Thanks! Yes, I'll be doing stuff with Django + Redis in the near future.

  • @Niki-ue6fk
    @Niki-ue6fk 10 месяцев назад

    Thanks !!

  • @firstandlast4435
    @firstandlast4435 8 месяцев назад

    A little recap:
    Annotate by itself (without values()) doesn't do grouping even with use of aggregate functions (which just duplicate argumented field in such case);
    We use annotate() with values() and we don't use it with only() (at least my tests proved last as useless);
    We can start from both child and parent Model and get the same result
    So this:
    Books.objects.values_list("author__firstname", "author__lastname").annotate(
    total=Count("id")
    )
    And that:
    q = Author.objects.values_list("firstname", "lastname").annotate(
    total=Count("books")
    )
    will do the same (p.s. "books" in the last statement refers to "related_query_name" specified in ForeignKey field of the "Books" model );

  • @frameff9073
    @frameff9073 Год назад +1

    thank

  • @abbasebadian6851
    @abbasebadian6851 2 месяца назад

    In the Concat topic, what if a field's value were empty? Is there a way to pass a fallback value for it ?

    • @bugbytes3923
      @bugbytes3923  2 месяца назад

      @@abbasebadian6851 you can use COALESCE for that - there’s a video in the series on this function

  • @azhariqbal3658
    @azhariqbal3658 11 месяцев назад

    Is there any package you use for runscript this is very useful for testing queries

    • @bugbytes3923
      @bugbytes3923  11 месяцев назад

      It’s part of django-extensions which I always add to django projects

  • @sha999-u4s
    @sha999-u4s Год назад

    hi, do you have solution for Like:
    Multiple table field Sum calculation from parent model ---------- to get stock qty each product (stock qty= purchase_qty - purchase_return_qty - sales_qty + sales_qty )

  • @Yarkanlaki
    @Yarkanlaki 9 месяцев назад

    I wonder why aggregation results always is too big.? Comapre to use for loop

  • @wihlarkop
    @wihlarkop Год назад

    can you make tutorial how to use async queryset on django 4?

  • @techwithabid
    @techwithabid 5 месяцев назад

    Do a video on channel and web socket

  • @firstandlast4435
    @firstandlast4435 8 месяцев назад

    What I dislike about youtube is that there's a need in comments in order to promote a channel, it might be ok in some cases but when it's about education I actually wanna see some related to subject discussions on top instead of "thanks author you are so great"...
    Anyway what I failed to understand is when annotate is used to add extra field to query set and when to group by fields and the similar about values. As it does return dictionaries like? Then why can we do things like ModelName.objects.values('smth').annotate(Agregate func) and then use functions like order by to it. Don't we need Django specific query sets to use those functions, or we can use it to any dictionary?

    • @bugbytes3923
      @bugbytes3923  8 месяцев назад

      The annotate() function will add the annotated field to each object in the queryset. Importantly, annotate returns a queryset, so you can chain other methods like values() and order_by(), etc.
      The aggregate() function, on the other hand, returns a dictionary containing all the aggregations passed to the function. Queryset methods don’t work on dictionaries, so chaining additional methods like order_by() won’t work.

  • @pakeffendi5061
    @pakeffendi5061 Год назад

    # fungction to get one cctv location and past it to leaflet map
    def Cctvlist(request, id):
    # get cctv category
    cctvs = get_object_or_404(Daftarcctv, id = id)
    # show all cctv location in cctv category
    cctv = cctvs.cctvdetail_set.all()
    # lopping all cctv location
    for i in cctv:
    # get one cctv location from i looping
    showloc = Cctvlocation.objects.get(pk=i)
    # i want to get cctv location row to past in json format
    # and get values lat, long from varible "showloc"
    # BUT ALWAYS FAIL, PLEASE SHOW ME A SOLUTION
    cctvsloc = list(Cctvlocation.objects.values('latitude', 'longitude')[:100])
    print(cctvsloc)
    return render(request, 'cctvkorem/daftarcctv.html', {'cctvs':cctvs, 'cctv':cctv, 'showloc':showloc })