Spatial Pattern Matching (SPM) is the pattern-based spatial keyword query. It can fit user’s intention on text keywords, distances and exclusion relationships of spatial objects at the same time. However, SPM still suffer from the following issues. Firstly, in some application scenario, SPM cannot meet the user’s preference query requirements for different attributes (such as price, service, etc.) of spatial objects. In addition, SPM only follows strict text keyword matching and ignores category during the query process, which may make the object categories in the query results incorrect, compromising query effectiveness. In view of these drawbacks, this paper formulates a novel query, i.e., category constraint spatial keyword preference query, or CSKPQ in short. The query integrates attributes of spatial objects and categories into SPM, finding one most suitable collection of spatial objects for user. Further, we propose an efficient query processing algorithm which use a new hybrid index structure. Extensive empirical experiments on real datasets demonstrate the effectiveness of our proposed algorithm.