distinct优化