Bloglar’da arama yaparken vazgeçilmez alanlardan biri olan arşiv alanını kendi siteme entegre etmek için sql tarafında kendime göre bir kod hazırladım bu makalenin devamında gerekli sql koduna ulaşabilirsiniz.
Bloglar’da arama yaparken vazgeçilmez alanlardan biri olan arşiv alanını kendi siteme entegre etmek için sql tarafında kendime göre bir kod hazırladım bu makalenin devamında gerekli sql koduna ulaşabilirsiniz.
Aşağıdaki sql kodunda değiştirmeniz gereken yerler from’da belirtilen tablo adı ve tarih alanını çektiğim “dateAdded” alanlarıdır ve ben sadece yayınlanmış olan makalelerin arşiv hesabına dahil edilmesi için where alanına “publish” alanını kullandım siz kendinize göre değiştirebilir veya silebilirsiniz.
Hazırlamış olduğum sql kodu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | SELECT CONCAT('>> ', (CASE WHEN DATEPART(MONTH,dateAdded) = 1 THEN 'Ocak' WHEN DATEPART(MONTH,dateAdded) = 2 THEN 'Şubat' WHEN DATEPART(MONTH,dateAdded) = 3 THEN 'Mart' WHEN DATEPART(MONTH,dateAdded) = 4 THEN 'Nisan' WHEN DATEPART(MONTH,dateAdded) = 5 THEN 'Mayıs' WHEN DATEPART(MONTH,dateAdded) = 6 THEN 'Haziran' WHEN DATEPART(MONTH,dateAdded) = 7 THEN 'Temmuz' WHEN DATEPART(MONTH,dateAdded) = 8 THEN 'Ağustos' WHEN DATEPART(MONTH,dateAdded) = 9 THEN 'Eylül' WHEN DATEPART(MONTH,dateAdded) = 10 THEN 'Ekim' WHEN DATEPART(MONTH,dateAdded) = 11 THEN 'Kasım' WHEN DATEPART(MONTH,dateAdded) = 12 THEN 'Aralık' END),' ', DATEPART(YEAR,dateAdded)) ARCHIVEDATE, COUNT(*) ARTICLECOUNT, CONCAT(DATEPART(YEAR,dateAdded),'.', DATEPART(MONTH,dateAdded),'.','01') ARCHIVEDATEVALUE FROM dbo.article a WHERE publish=1 GROUP BY CONCAT('>> ', (CASE WHEN DATEPART(MONTH,dateAdded) = 1 THEN 'Ocak' WHEN DATEPART(MONTH,dateAdded) = 2 THEN 'Şubat' WHEN DATEPART(MONTH,dateAdded) = 3 THEN 'Mart' WHEN DATEPART(MONTH,dateAdded) = 4 THEN 'Nisan' WHEN DATEPART(MONTH,dateAdded) = 5 THEN 'Mayıs' WHEN DATEPART(MONTH,dateAdded) = 6 THEN 'Haziran' WHEN DATEPART(MONTH,dateAdded) = 7 THEN 'Temmuz' WHEN DATEPART(MONTH,dateAdded) = 8 THEN 'Ağustos' WHEN DATEPART(MONTH,dateAdded) = 9 THEN 'Eylül' WHEN DATEPART(MONTH,dateAdded) = 10 THEN 'Ekim' WHEN DATEPART(MONTH,dateAdded) = 11 THEN 'Kasım' WHEN DATEPART(MONTH,dateAdded) = 12 THEN 'Aralık' END),' ', DATEPART(YEAR,dateAdded)), CONCAT(DATEPART(YEAR,dateAdded), '.',DATEPART(MONTH,dateAdded),'.','01') |
Yukarıdaki sql kodunun çıktısı aşağıdaki gibidir.
ARCHIVEDATE | ARTICLECOUNT | ARCHIVEDATEVALUE |
---|---|---|
>> Ekim 2013 | 17 | 2013.10.01 |
>> Kasım 2013 | 17 | 2013.11.01 |
>> Aralık 2013 | 21 | 2013.12.01 |
>> Ağustos 2013 | 2 | 2013.8.01 |
>> Eylül 2013 | 12 | 2013.9.01 |
>> Ocak 2014 | 17 | 2014.1.01 |