mssql – DijitalTurk https://dijitalturk.com/veysel Dijital Paylaşımlar Mon, 12 Dec 2016 14:28:29 +0000 tr hourly 1 Saatlere göre satış dağılım raporu Mssql kodu https://dijitalturk.com/veysel/saatlere-gore-satis-dagilim-raporu-mssql-kodu/ https://dijitalturk.com/veysel/saatlere-gore-satis-dagilim-raporu-mssql-kodu/#respond Wed, 03 Jul 2013 12:14:42 +0000 http://dijitalturk.com/veysel/?p=211 FATBASLIK tablosundan saat aralıklarına göre rapor alan MSSQL kodum. select TARIH=(convert(VARCHAR(10),FB.TARIH,120)), '_09'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+'

The post Saatlere göre satış dağılım raporu Mssql kodu appeared first on DijitalTurk.

]]>
FATBASLIK tablosundan saat aralıklarına göre rapor alan MSSQL kodum.

select
TARIH=(convert(VARCHAR(10),FB.TARIH,120)),
'_09'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 08:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 09:59:00.000' ),
'_10'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 09:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 10:59:00.000' ),
'_11'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 10:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 11:59:00.000' ),
'_12'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 11:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 12:59:00.000' ),
'_13'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 12:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 13:59:00.000' ),
'_14'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 13:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 14:59:00.000' ),
'_15'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 14:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 15:59:00.000' ),
'_16'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 15:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 16:59:00.000' ),
'_17'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 16:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 17:59:00.000' ),
'_18'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 17:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 18:59:00.000' ),
'_19'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 18:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 19:59:00.000' ),
'_20'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 19:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 20:59:00.000' ),
'_21'=(select SUM(FATURA_TUTARI) from FATBASLIK FB1 where FB1.TARIH BETWEEN convert(VARCHAR(10),FB.TARIH,120)+' 20:59:00.000' AND convert(VARCHAR(10),FB.TARIH,120)+' 21:59:00.000' )
from
FATBASLIK FB 
group by convert(VARCHAR(10),FB.TARIH,120)

Bu da olması gerektiği gibi olan kod 🙂

SELECT
	TARIH,
	SUM([09]) AS [09],
	SUM([10]) AS [10],
	SUM([11]) AS [11],
	SUM([12]) AS [12],
	SUM([13]) AS [13],
	SUM([14]) AS [14],
	SUM([15]) AS [15],
	SUM([16]) AS [16],
	SUM([17]) AS [17],
	SUM([18]) AS [18]
FROM(
SELECT
	TARIH,
	[09]=CASE WHEN SAAT BETWEEN '09:00:00' AND '09:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[10]=CASE WHEN SAAT BETWEEN '10:00:00' AND '10:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[11]=CASE WHEN SAAT BETWEEN '11:00:00' AND '11:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[12]=CASE WHEN SAAT BETWEEN '12:00:00' AND '12:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[13]=CASE WHEN SAAT BETWEEN '13:00:00' AND '13:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[14]=CASE WHEN SAAT BETWEEN '14:00:00' AND '14:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[15]=CASE WHEN SAAT BETWEEN '15:00:00' AND '15:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[16]=CASE WHEN SAAT BETWEEN '16:00:00' AND '16:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[17]=CASE WHEN SAAT BETWEEN '17:00:00' AND '17:59:59' THEN SUM(TUTAR) ELSE 0 END,
	[18]=CASE WHEN SAAT BETWEEN '18:00:00' AND '18:59:59' THEN SUM(TUTAR) ELSE 0 END
FROM(

select
	convert(VARCHAR(10),FB.TARIH,120) as TARIH,
	SAAT=CONVERT(VARCHAR(10),FB.TARIH,108),
	FB.FATURA_TUTARI AS TUTAR
FROM
	FATBASLIK FB 
) AS X

GROUP BY
	TARIH,SAAT
) AS Y

GROUP BY TARIH

 

The post Saatlere göre satış dağılım raporu Mssql kodu appeared first on DijitalTurk.

]]>
https://dijitalturk.com/veysel/saatlere-gore-satis-dagilim-raporu-mssql-kodu/feed/ 0
MsSQL T-SQLTarih Fonksiyonları https://dijitalturk.com/veysel/mssql-t-sqltarih-fonksiyonlari/ https://dijitalturk.com/veysel/mssql-t-sqltarih-fonksiyonlari/#respond Fri, 28 Jun 2013 18:03:37 +0000 http://dijitalturk.com/blog/?p=30 SQL Tarih fonksiyonlarının detaylı listesidir. SELECT CURRENT_TIMESTAMP -- Sonuç : 2009-07-20 10:39:15.097SELECT DATEADD(day,2,'2009-07-20') -- Sonuç : 2009-07-22 00:00:00.000SELECT DATEADD(month,2,'2009-07-20') --

The post MsSQL T-SQLTarih Fonksiyonları appeared first on DijitalTurk.

]]>
SQL Tarih fonksiyonlarının detaylı listesidir.

SELECT CURRENT_TIMESTAMP                        -- Sonuç :  2009-07-20 10:39:15.097SELECT DATEADD(day,2,'2009-07-20')              -- Sonuç :  2009-07-22 00:00:00.000SELECT DATEADD(month,2,'2009-07-20')            -- Sonuç :  2009-09-20 00:00:00.000SELECT DATEDIFF(day,'2009-07-20','2015-02-09')  -- Sonuç :  2030 (Gün olarak aldık)

SELECT DATENAME(month, '2009-07-20')            -- Sonuç :  July

SELECT DATENAME(weekday, '2009-07-20')          -- Sonuç :  Monday

SELECT DATEPART(month, '2009-07-20')            -- Sonuç :  7

--Şuanki Zaman ve Tarihi verir
SELECT GETDATE()                                -- Sonuç :  2009-07-20 11:52:32.893

-- Londra - Greenwich Saati
SELECT GETUTCDATE()                             -- Sonuç :  2009-07-20 08:52:44.693

--Girilen string değerin tarih olup olmadığını belirler. 1 ise tarih 0 ise değil.
SELECT ISDATE('2009-07-20')                     -- Sonuç :  1
SELECT ISDATE('2014-18-09')                     -- Sonuç :  0

--girilen Tarihin gün bilgisini verir.
SELECT DAY('2009-07-20')                        -- Sonuç :  20
--girilen Tarihin ay bilgisini verir.
SELECT MONTH('2009-07-20')                      -- Sonuç :  7
--Girilen Tarihin yıl bilgisini verir.
SELECT YEAR('2009-07-20')                       -- Sonuç :  2009

--Sistem Zamanını verir.
SELECT SYSDATETIME()       -- Sonuç :  2009-07-20 11:53:15.7138432

--Sistem Zamanını Greenwiche göre verir.
SELECT SYSUTCDATETIME()    -- Sonuç :  2009-07-20 08:53:25.9958432

-- DATEADD: Şuank, Tarihe 7 Gün ekleyelim.
-- Bunun için 1 hafta eklemek veya 7 gün eklemek yeterlidir.
SELECT DATEADD(DD, 7, GETDATE())
SELECT DATEADD(WW, 1, GETDATE())

-- Şuanki Tarihe göre Ayın hangi günündeyiz.
SELECT DAY(GETDATE())

-- Şuanki Ayın Ilk günü
SELECT DATEADD(DD,-(DAY(GETDATE())-1),CONVERT(VARCHAR,GETDATE(),112))

-- Şuanki Ayın son günü
SELECT DATEADD(DD,-(DAY(DATEADD(MM,1,GETDATE()))),DATEADD(MM,1,
CONVERT(VARCHAR,GETDATE(),112)))

-- DATEDIFF: Ocak 1 2007 den bugune kadar kaç gün geçti
SELECT DATEDIFF(DD,'20070101',GETDATE())

-- DATENAME: Şuanki Ay
SELECT DATENAME(MM, GETDATE())

-- Hangi Aydayız.
SELECT MONTH(GETDATE())

-- Hangi Yıldayız
SELECT YEAR(CURRENT_TIMESTAMP)

 

The post MsSQL T-SQLTarih Fonksiyonları appeared first on DijitalTurk.

]]>
https://dijitalturk.com/veysel/mssql-t-sqltarih-fonksiyonlari/feed/ 0
Sql Geçici Tablo Oluşturmak https://dijitalturk.com/veysel/gecici-tablo-olusturmak/ https://dijitalturk.com/veysel/gecici-tablo-olusturmak/#respond Fri, 28 Jun 2013 18:01:09 +0000 http://dijitalturk.com/blog/?p=26 Sıra ve Etiket Fieldlarına sahip geçici tablo oluşturma komutu, DB bağlantısı yenilendiğinde tablo drop olur. IF EXISTS(SELECT 1 FROM tempdb..sysobjects

The post Sql Geçici Tablo Oluşturmak appeared first on DijitalTurk.

]]>
Sıra ve Etiket Fieldlarına sahip geçici tablo oluşturma komutu, DB bağlantısı yenilendiğinde tablo drop olur.

IF EXISTS(SELECT 1 FROM tempdb..sysobjects WHERE name LIKE '#TABLO_:SPID_%')
DROP TABLE #TABLOCREATE TABLE #TABLO(
[SIRA] [smallint] NULL,
[ETIKET] [nvarchar](50) NULL,
)
INSERT INTO #TABLO(SIRA,ETIKET) values('2','test');select * from #TABLO

 

 

The post Sql Geçici Tablo Oluşturmak appeared first on DijitalTurk.

]]>
https://dijitalturk.com/veysel/gecici-tablo-olusturmak/feed/ 0
SQL Server 2008 “Saving changes is not permitted” Hatası https://dijitalturk.com/veysel/sql-server-2008-saving-changes-is-not-permitted-hatasi/ https://dijitalturk.com/veysel/sql-server-2008-saving-changes-is-not-permitted-hatasi/#respond Fri, 28 Jun 2013 14:36:56 +0000 http://dijitalturk.com/blog/?p=14 SQL Server 2008 “Saving changes is not permitted” Hatası Alıntı:SQL Server 2008’i ilk kurup deneyenlerin en çok sorduğu şeylerden birisi

The post SQL Server 2008 “Saving changes is not permitted” Hatası appeared first on DijitalTurk.

]]>
SQL Server 2008 “Saving changes is not permitted” Hatası

Alıntı:SQL Server 2008’i ilk kurup deneyenlerin en çok sorduğu şeylerden birisi tabloyu oluşturduktan sonra tabloda bir değişiklik yapmak istediğimiz de Management Studio’nun buna izin vermeyip yeniden oluşturmamızı istemeseydi. Çözüm çok basit aslında, aşağıdaki adımları uygulayarak bu özelliği kapatabiliyoruz.

Tools menüsüne girip Option seçeneğine oradan da Designers’a geçip Table and Database Designers seçeneğini seçiyoruz. Burada işaretli olan Prevent saving changes that require table re-creation checkbox’ın işaretini kaldırırsak bu özellik pasif hale gelecektir.

The post SQL Server 2008 “Saving changes is not permitted” Hatası appeared first on DijitalTurk.

]]>
https://dijitalturk.com/veysel/sql-server-2008-saving-changes-is-not-permitted-hatasi/feed/ 0