練習
練習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_rankproperty時,應該raise CardinalityViolationError。