На днях я просматривал SQL-таблицы SOGo и увидел, что записи хранятся в виде данных vcard, а не в прекрасной таблице с разными столбцами, такими как фамилия, номер телефона и т. д.
Хотя есть таблица sogo_quick_contacts со схемой, которую я ожидал, там не все столбцы, а только некоторые основные.
Мне интересно, почему так? Лучше ли запрашивать запись со всеми данными vcard и извлекать нужную мне информацию? Не было бы лучше (быстрее) применить запрос SELECT, указывающий некоторые столбцы, которые я ищу, если бы они были доступны?
CardDav, кажется, предоставляет эти vcard-данные, они больше подходят для поиска контактов, почему?
Что, если я хочу просто перечислить имена и дни рождения. Не будет ли извлечение всех визитных карточек намного медленнее, чем использование SQL-запроса, где все разбито на разные столбцы?