CONVERT
е специфичен за SQL Server, CAST
е ANSI.
CONVERT
е по-гъвкав, тъй като можете да форматирате дати и т.н. Освен това, те са почти еднакви. Ако не ви интересуват разширените функции, използвайте CAST
.
РЕДАКТИРАНЕ:
Както е отбелязано от @beruic и @C-F в коментарите по-долу, има възможна загуба на прецизност, когато се използва имплицитно преобразуване (това е такова, при което не използвате нито CAST, нито CONVERT). За допълнителна информация вижте CAST и CONVERT и по-специално тази графика:Диаграма за преобразуване на типове данни на SQL Server. С тази допълнителна информация оригиналният съвет остава същият. Използвайте CAST, където е възможно.