欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django框架中數據的連鎖查詢和限制返回數據的方法

 更新時間:2015年07月17日 11:32:10   投稿:goldensun  
這篇文章主要介紹了Django框架中數據的連鎖查詢和限制返回數據的方法,Django是Python重多高人氣框架中最為著名的一個,需要的朋友可以參考下

連鎖查詢

通常我們需要同時進行過濾和排序查詢的操作。 因此,你可以簡單地寫成這種“鏈式”的形式:

>>> Publisher.objects.filter(country="U.S.A.").order_by("-name")
[<Publisher: O'Reilly>, <Publisher: Apress>]

你應該沒猜錯,轉換成SQL查詢就是 WHERE 和 ORDER BY 的組合:

SELECT id, name, address, city, state_province, country, website
FROM books_publisher
WHERE country = 'U.S.A'
ORDER BY name DESC;

限制返回的數據

另一個常用的需求就是取出固定數目的記錄。 想象一下你有成千上萬的出版商在你的數據庫里, 但是你只想顯示第一個。 你可以使用標準的Python列表裁剪語句:

>>> Publisher.objects.order_by('name')[0]
<Publisher: Apress>

這相當于:

SELECT id, name, address, city, state_province, country, website
FROM books_publisher
ORDER BY name
LIMIT 1;

類似的,你可以用Python的range-slicing語法來取出數據的特定子集:

>>> Publisher.objects.order_by('name')[0:2]

這個例子返回兩個對象,等同于以下的SQL語句:

SELECT id, name, address, city, state_province, country, website
FROM books_publisher
ORDER BY name
OFFSET 0 LIMIT 2;

注意,不支持Python的負索引(negative slicing):

>>> Publisher.objects.order_by('name')[-1]
Traceback (most recent call last):
 ...
AssertionError: Negative indexing is not supported.

雖然不支持負索引,但是我們可以使用其他的方法。 比如,稍微修改 order_by() 語句來實現(xiàn):

>>> Publisher.objects.order_by('-name')[0]


相關文章

  • 教你如何利用python3爬蟲爬取漫畫島-非人哉漫畫

    教你如何利用python3爬蟲爬取漫畫島-非人哉漫畫

    本文給大家分享利用python3爬蟲爬取漫畫島-非人哉漫畫,本文通過實例代碼給大家介紹的非常詳細,需要的朋友跟隨小編一起學習下吧
    2021-07-07
  • 詳解Python腳本如何設置試用期

    詳解Python腳本如何設置試用期

    程序員可能會私下給別人開發(fā)一些工具,但是通常要給別人試用一下,但是萬一別人試用后,把你拉黑,那就白忙活了。今天就分享如何在 Python 里設置有效期
    2022-07-07
  • python 2.7 檢測一個網頁是否能正常訪問的方法

    python 2.7 檢測一個網頁是否能正常訪問的方法

    今天小編就為大家分享一篇python 2.7 檢測一個網頁是否能正常訪問的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • 解決Python print輸出不換行沒空格的問題

    解決Python print輸出不換行沒空格的問題

    今天小編就為大家分享一篇解決Python print輸出不換行沒空格的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • Python實現(xiàn)計算AUC的示例代碼

    Python實現(xiàn)計算AUC的示例代碼

    AUC(Area?under?curve)是機器學習常用的二分類評測手段,直接含義是ROC曲線下的面積。本文將利用Python語言實現(xiàn)計算AUC,感興趣的可以學習一下
    2022-07-07
  • Python?Pyramid框架應用場景及高級特性實戰(zhàn)

    Python?Pyramid框架應用場景及高級特性實戰(zhàn)

    Pyramid是一個靈活且強大的Python?web框架,廣泛用于構建各種規(guī)模的Web應用程序,本文將深度探索Pyramid框架,介紹其核心概念、應用場景以及一些高級特性
    2023-12-12
  • Pycharm更換python解釋器的方法

    Pycharm更換python解釋器的方法

    今天小編就為大家分享一篇Pycharm更換python解釋器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python,Java,JavaScript實現(xiàn)indexOf

    python,Java,JavaScript實現(xiàn)indexOf

    這篇文章主要介紹了python,Java,JavaScript如何實現(xiàn)indexOf,幫助大家更好的理解indexOf,感興趣的朋友可以了解下
    2020-09-09
  • python實現(xiàn)AES算法及AES-CFB8加解密源碼

    python實現(xiàn)AES算法及AES-CFB8加解密源碼

    這篇文章主要為大家介紹了python實現(xiàn)AES算法及AES-CFB8加解密的源碼示例,有需要朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-02-02
  • Python安裝官方whl包和tar.gz包的方法(推薦)

    Python安裝官方whl包和tar.gz包的方法(推薦)

    下面小編就為大家?guī)硪黄狿ython安裝官方whl包和tar.gz包的方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論