Django ORM 查詢表中某列字段值的方法
1.什么是ORM
ORM 全拼Object-Relation Mapping. 中文意為 對象-關系映射. 在MVC/MVT設計模式中的Model模塊中都包括ORM2.ORM優勢
(1)只需要面向對象編程, 不需要面向數據庫編寫代碼.
對數據庫的操作都轉化成對類屬性和方法的操作. 不用編寫各種數據庫的sql語句.(2)實現了數據模型與數據庫的解耦, 屏蔽了不同數據庫操作上的差異.
不在關注用的是mysql、oracle...等. 通過簡單的配置就可以輕松更換數據庫, 而不需要修改代碼.3.ORM劣勢
相比較直接使用SQL語句操作數據庫,有性能損失.根據對象的操作轉換成SQL語句,根據查詢的結果轉化成對象, 在映射過程中有性能損失.
下面看下Django ORM 查詢表中某列字段值,詳情如下:
場景:
有一個表中的某一列,你需要獲取到這一列的所有值,你怎么操作?
解決辦法:
有一個model為:Event
方式一:
獲取內容:Event.objects.values(’title’)輸出內容:<QuerySet [{’title’: ’測試feed’}, {’title’: ’今天’}, {’title’: ’第三個日程測試’}, {’title’: ’第四個日程測試’}, {’title’: ’第五個測試日程’}]>
方式一獲取到的是一個QuerySet,內容是鍵值對構成的,鍵為表的列名,值為對應的每個值。
方式二:
獲取內容:Event.objects.values_list(’title’)輸出內容:<QuerySet [(’測試feed’,), (’今天’,), (’第三個日程測試’,), (’第四個日程測試’,), (’第五個測試日程’,)]>
方式二獲取到的也是一個QuerySet,但是內容是元祖形式的查詢列的值。
但是我們想要的是這一列的值呀,這怎么是一個QuerySet,而且還包含了列名,或者是被包含在了元祖中?
查看高階用法,告訴你怎么獲取一個值的list,如:
[’測試feed’, ’今天’, ’第三個日程測試’, ’第四個日程測試’, ’第五個測試日程’]
到此這篇關于Django ORM 查詢表中某列字段值的文章就介紹到這了,更多相關django orm 字段值內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. 使用IntelliJ IDEA 配置安卓(Android)開發環境的教程詳解(新手必看)2. ASP.NET MVC通過勾選checkbox更改select的內容3. IntelliJ IDEA設置默認瀏覽器的方法4. idea設置提示不區分大小寫的方法5. .NET SkiaSharp 生成二維碼驗證碼及指定區域截取方法實現6. phpstudy apache開啟ssi使用詳解7. ASP中實現字符部位類似.NET里String對象的PadLeft和PadRight函數8. 存儲于xml中需要的HTML轉義代碼9. asp批量添加修改刪除操作示例代碼10. CentOS郵件服務器搭建系列—— POP / IMAP 服務器的構建( Dovecot )
