練習
練習1
請寫一段query列出每個場景的scene_number
、title
及 title
的長度(命名為title_len
),並對title_len
及scene_number
作升冪排序。
練習1參考解答
{
default::Scene {scene_number: 1, title: '韓琛初現', title_len: 4},
default::Scene {scene_number: 3, title: '黑白顛倒', title_len: 4},
default::Scene {scene_number: 7, title: '互猜底牌', title_len: 4},
default::Scene {scene_number: 8, title: '誰是內鬼', title_len: 4},
default::Scene {scene_number: 9, title: '真相大白', title_len: 4},
default::Scene {scene_number: 2, title: '我想跟他換', title_len: 5},
default::Scene {scene_number: 4, title: '被遺忘的時光', title_len: 6},
default::Scene {scene_number: 10, title: '我想做個好人', title_len: 6},
default::Scene {scene_number: 5, title: '三年之後又三年', title_len: 7},
default::Scene {scene_number: 6, title: '有內鬼終止交易', title_len: 7},
}
練習2
請寫一個名為is_higher_policerank
的function
,其接收id1
及id2
兩個<uuid>
型態的變數。當id1
所屬object
的police_rank
高於id2
所屬object
的police_rank
時,返回true
,否則為false
。此外:
- 當
id1
及id2
並非有效的uuid
型態時,應該raise InvalidValueError
。 - 當
id1
及id2
所屬object
沒有具有police_rank
property
時,應該raise CardinalityViolationError
。