Bitrix: как сделать пейджер, если выбрал данные через $db->query

Для начала вам нужно сделать запрос с cnt, что бы знать сколько всего записей, дальше вы делаете запрос с лимитом (выводите нужную страницу), а дальше простая магия:

$cnt = new CDBResult;
$cnt->InitFromArray(range(1,$allItemsCnt));
$cnt->NavStart($itemsPerPage, false, (isset($_GET["PAGEN_1"]) ? $_GET["PAGEN_1"] : false));
$arResult["Nav"] = $cnt->GetPageNavStringEx($navComponentObject);
$arResult["NavExt"] = $navComponentObject->arResult;