排序查詢
根據歌手名下的歌曲數量,對歌手進行降序排序
建立兩個模型
排序查詢# 建立歌手模型
class
songer
(models.model)
: name = models.charfield(max_length=50)
*** = models.charfield(max_length=20)
img = models.imagefield(upload_to=
'static'
)# 建立歌曲模型
class
sing
(models.model)
: name = models.charfield(max_length=40)
# related_name='sings':因為歌手沒有外來鍵,所以無法通過歌手找到歌曲,就需要設定乙個方法,
# 使用通過歌手模型能夠找到歌曲模型
songer = models.foreignkey(songer,on_delete=models.cascade,related_name=
'sings'
) time = models.datetimefield(auto_now_add=
true
)
模糊查詢def
get(self,request)
:# 查詢所有歌手,並按照其歌曲降序排序,annotate:註解
songer_li = songer.objects.annotate(sings_num = count(
'sings'))
.order_by(
'-sings_num'
).values(
)return response(songer_li)
def
get(self,request)
:# 接收前端傳來的查詢關鍵字
word = request.get.get(
'word'
)# 利用關鍵字對歌手模糊查詢 __contains:查詢某個字元
songer_li = songer.objects.
filter
(name__contains=word)
.values(
)# 利用關鍵字對歌曲模糊查詢
sing_li = sing.objects.
filter
(name__contains=word)
.values(
)# 返回滿足條件的資料
return response(
)
模糊查詢和排序查詢
1.表示任意一位字元 2.表示任意位數的任意字元 3.要實現模糊查詢需要使用到關鍵字 like 基本語法 3 select 1 from 資料 2 where 模糊查詢的字段 like 模糊查詢的關鍵字 注意 模糊查詢要在where字句中使用。查詢姓名是以a開頭的雇員資訊select from em...
專案 模糊查詢 排序
專案需求 查詢上課班資訊,把班名排序,漢字英文按照首字母英文本母表排序,數字放在漢字 英文前 思路 直接用sql查詢出資料,然後排序 select t.teachclass name as teachclassname,t.teachclass code as teachclasscode,t.co...
vue 模糊查詢 排序
原理 原生js的search 方法,用於檢索字串中指定的子字串,或檢索與正規表示式相匹配的子字串。如果沒有找到任何匹配的子串,則返回 1。input輸入框,模糊查詢 效果如下 sort 方法 用於對陣列的元素進行排序,並返回陣列。預設排序順序是根據字串unicode碼點。注意 1 如果呼叫該方法時沒...