А что это вообще такое?

       

Hash. Преобразование таблицы к хешу с заданными ключами



^таблица.hash[ключ]
^таблица.hash[ключ][опции]
^таблица.hash[ключ][столбец значений]
^таблица.hash[ключ][столбец значений][опции]
^таблица.hash[ключ][таблица со столбцами значений]
^таблица.hash[ключ][таблица со столбцами значений][опции]

Ключ может быть задан, как:
·[строка] - название столбца, значение которого считается ключом;
·{код} - результат исполнения которого считается ключом;  
·(математическое выражение) - результат вычисления которого считается ключом.  

Метод преобразует таблицу к хешу вида:
$хеш[


        $.значение_ключа[
            $.название_столбца[значение_столбца]
            …
        ]
    …
]

Иными словами, метод создает хеш, в котором ключами являются значения, описанные параметром ключ. При этом каждому ключу ставится в соответствие хеш, в котором для всех столбцов таблицы хранятся ассоциации «название столбца - значение столбца в записи».

Если задан столбец значений, то каждому ключу будет соответствовать хеш с одной ассоциацией «название столбца - значение столбца в записи».

Кроме того, можно задать несколько столбцов значений, для этого необходимо передать дополнительным параметром таблицу, в которой перечислены все необходимые столбцы.

Опции - хеш с опциями преобразования.
$.distinct(0/1)
0=наличие в ключевом столбце одинаковых значений считается ошибкой (по-умолчанию);
1=выбрать из таблицы записи с уникальным ключом.
$.distinct[tables]
создать хеш из таблиц, содержащих строки с ключом. [3.0.8]








Содержание раздела