Recent studies show that constraint pushing may substantially improve the performance of frequent pattern mining, and methods have been proposed to incorporate interesting constraints in frequent pattern mining. However, some popularly encountered constraints are still considered as "tough" constraints which cannot be pushed deep into the mining process. In this study, we extend our scope to those tough constraints and identify an interesting class, called convertible constraints, which can be pushed deep into frequent pattern mining. Then we categorize all the constraints into five classes and show that four of them can be integrated into the frequent pattern mining process. This covers most of the constraints popularly encountered and composed by SQL primitives. Moreover, a new constraint-based frequent pattern mining method, called constrained frequent pattern growth, or simply CFG, which integrates constraint pushing with a recently developed frequent pattern growth method, is developed. We show this integration opens more room on constraint pushing since finer constraint checking can be enforced on each projected database. Our performance study shows that the method is powerful and outperforms substantially the existing constrained frequent pattern mining algorithms.