Trên một số truy vấn SQL, tôi cần kiểm tra xem một trường có bắt đầu bằng một ký tự hay không. Có một số cách để làm điều đó, cái nào tốt hơn trong hiệu suất/tiêu chuẩn?Trên SQL Server (2008), nếu tôi muốn lọc một trường chuỗi bắt đầu bằng thứ gì đó, cách tốt nhất là gì?
Tôi thường sử dụng
tb.field LIKE 'C%'
nhưng tôi cũng có thể sử dụng
LEFT(LTRIM(tb.Field),1) = 'C'
Tôi biết rõ những ứng dụng của từng trường hợp, nhưng không phải về hiệu suất.
Tôi không biết chắc chắn, nhưng tôi tưởng tượng ví dụ đầu tiên, bởi vì trong lần thứ hai bạn đang làm một trim và sau đó đi qua tất cả các kết quả một lần nữa để tìm 'C' –
Tốt câu hỏi, nhưng cách tốt nhất để tìm ra điều này là xem các kế hoạch thực hiện thực tế của họ và xem chúng khác nhau ở đâu. –