SQL sorgularında, tarih (datetime) sorguları her zaman sıkıntılı olur. Çünkü tarih formatı bir çok değişik formlarda sunulmaktadır. Örneğin: iki bin yılının, birinci ayının yirmisi dediğimizde; bizler 20.01.2000 olarak algılarken. Amerika gibi ülkeler 01.20.2000 olarak algılarlar. Daha teknik bir örnek verecek olursak SQL veri tabanınızda tarih alanınız gg.aa.yyyy şekilde ki gibi noktasal ayraçla ayarlanmışken program tarafında tarihi gg/aa/yyyy şeklinde slaç ayracı ile aldığımız durumlar oluşuyor. Bu gibi durumlarda, SQL tarih sorgusu üzerinde, tip dönüşümü (datetime convert) işlemleri gerçekleştirmemiz gerekmektedir. Bu nedenle sizlere SQL tarih sorgusunda tip dönüşümlerinden yani DateTime Convert işleminden kısaca bahsedelim.
SELECT CONVERT ( Donusecek Tip (DateTime, VarChar gibi), Donusmesi Istenen Veri, Tip Kodu) --Format: mon dd yyyy hh:mmAM (or PM) --Çıktı: Dec 7 2018 4:09PM SELECT convert(varchar, getdate(), 100) --Format: mm/dd/yyyy --Çıktı: 12/07/2018 SELECT convert(varchar, getdate(), 101) --Format: yyyy.mm.dd --Çıktı: 2018.12.07 SELECT convert(varchar, getdate(), 102) --Format: dd/mm/yyyy --Çıktı: 07/12/2018 SELECT convert(varchar, getdate(), 103) --Format: dd.mm.yyyy --Çıktı: 07.12.2018 SELECT convert(varchar, getdate(), 104) --Format: dd-mm-yyyy --Çıktı: 07-12-2018 SELECT convert(varchar, getdate(), 105) --Format: dd mon yyyy --Çıktı: 07 Dec 2018 SELECT convert(varchar, getdate(), 106) --Format: mon dd, yyyy --Çıktı: Dec 07, 2018 SELECT convert(varchar, getdate(), 107) --Format: hh:mm:ss --Çıktı: 15:49:24 SELECT convert(varchar, getdate(), 108) --Format: mon dd yyyy hh:mm:ss:mmmAM (or PM) --Çıktı: Dec 7 2018 3:50:13:540PM SELECT convert(varchar, getdate(), 109) --Format: mm-dd-yyyy --Çıktı: 12-07-2018 SELECT convert(varchar, getdate(), 110) --Format: yyyy/mm/dd -- yyyymmdd - ISO date format - international standard - works with any language setting --Çıktı: 2018/12/07 SELECT convert(varchar, getdate(), 111) --Format: yyyymmdd --Çıktı: 20181207 SELECT convert(varchar, getdate(), 112) --Format: dd mon yyyy hh:mm:ss:mmm --Çıktı: 07 Dec 2018 15:53:14:053 SELECT convert(varchar, getdate(), 113) --Format: hh:mm:ss:mmm(24h) --Çıktı: 15:54:05:693 SELECT convert(varchar, getdate(), 114) --Format: yyyy-mm-dd hh:mm:ss(24h) --Çıktı: 2018-12-07 15:54:23 SELECT convert(varchar, getdate(), 120) --Format: yyyy-mm-dd hh:mm:ss.mmm --Çıktı: 2018-12-07 15:55:15.630 SELECT convert(varchar, getdate(), 121) --Format: yyyy-mm-ddThh:mm:ss.mmm --Çıktı: 2018-12-07T15:55:44.147 SELECT convert(varchar, getdate(), 126) --Without century (YY) date / datetime conversion - there are exceptions! --Format: mon dd yyyy hh:mmAM (or PM) --Çıktı: Dec 7 2018 3:56PM SELECT convert(varchar, getdate(), 0) --Format: mm/dd/yy --Çıktı: 12/07/18 SELECT convert(varchar, getdate(), 1) --Format: yy.mm.dd --Çıktı: 18.12.07 SELECT convert(varchar, getdate(), 2) --Format: dd/mm/yy --Çıktı: 07/12/18 SELECT convert(varchar, getdate(), 3) --Format: dd.mm.yy --Çıktı: 07.12.18 SELECT convert(varchar, getdate(), 4) --Format: dd-mm-yy --Çıktı: 07-12-18 SELECT convert(varchar, getdate(), 5) --Format: dd mon yy --Çıktı: 07 Dec 18 SELECT convert(varchar, getdate(), 6) --Format: mon dd, yy --Çıktı: Dec 07, 18 SELECT convert(varchar, getdate(), 7) --Format: hh:mm:ss --Çıktı: 16:02:32 SELECT convert(varchar, getdate(), 8) --Format: mon dd yyyy hh:mm:ss:mmmAM (or PM) --Çıktı: Dec 7 2018 4:03:02:100PM SELECT convert(varchar, getdate(), 9) --Format: mm-dd-yy --Çıktı: 12-07-18 SELECT convert(varchar, getdate(), 10) --Format: yy/mm/dd --Çıktı: 18/12/07 SELECT convert(varchar, getdate(), 11) --Format: yymmdd --Çıktı: 181207 SELECT convert(varchar, getdate(), 12) --Format: dd mon yyyy hh:mm:ss:mmm --Çıktı: 07 Dec 2018 16:05:07:547 SELECT convert(varchar, getdate(), 13) --Format: hh:mm:ss:mmm(24h) --Çıktı: 16:05:34:363 SELECT convert(varchar, getdate(), 14) --Format: yyyy-mm-dd hh:mm:ss(24h) --Çıktı: 2018-12-07 16:06:14 SELECT convert(varchar, getdate(), 20) --Format: yyyy-mm-dd hh:mm:ss.mmm --Çıktı: 2018-12-07 16:06:43.970 SELECT convert(varchar, getdate(), 21) --Format: mm/dd/yy hh:mm:ss AM (or PM) --Çıktı: 12/07/18 4:06:59 PM SELECT convert(varchar, getdate(), 22) --Format: yyyy-mm-dd --Çıktı: 2018-12-07 SELECT convert(varchar, getdate(), 23) --Format: hh:mm:ss --Çıktı: 16:08:11 SELECT convert(varchar, getdate(), 24) --Format: yyyy-mm-dd hh:mm:ss.mmm --Çıktı: 2018-12-07 16:08:28.353 SELECT convert(varchar, getdate(), 25)