FLOOR = Aşağı yuvarla (Herhangi bir ondalık için sayının kendinden küçük, en büyük tam sayıyı verir)
CEILING = Aşağı yuvarla (Herhangi bir ondalık için sayının kendinden büyük, en küçük tam sayıyı verir)
ROUND = Sayının yakın olduğu tam sayı değerini verir.
SELECT FLOOR(12.252141),Ceiling(12.252141),Round(12.252141,0)
Sonuç : 12 13 12.000000
SELECT FLOOR(12.987363),Ceiling(12.987363),Round(12.987363,0)
Sonuç : 12 13 13.000000
Not : Round fonksiyonu 2 parametre alır. Birincisi yuvarlayacağı sayı ikincisi ise yuvarlarken virgülden sonra dikkate alacağı hane sayısını ifade eder.
Round(12.252141,0) =12.000000
Round(12.252141,1) = 12.300000
Round(12.252141,2) = 12.250000
Round(12.252141,3) = 12.252000
Round(12.252141,4) = 12.252100
17 Kasım 2009 Salı
Backup Önemli Arkadaşlar
USE veritabani_ismi
GO
BACKUP DATABASE veritabani_ismi
TO DISK = 'C:\backup\sqlbackup.bck'
WITH FORMAT,
NAME = 'veritabani_ismi yedeği'
GO
GO
BACKUP DATABASE veritabani_ismi
TO DISK = 'C:\backup\sqlbackup.bck'
WITH FORMAT,
NAME = 'veritabani_ismi yedeği'
GO
Çeşitli Veritabanlarında Rastgele Veri Çekmek
Select a random record with Oracle:
SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1
---
Select a random row with IBM DB2
SELECT column, RAND() as IDX
FROM table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
---
Select a random row with Microsoft SQL Server:
SELECT TOP 1 column FROM table
ORDER BY *NEWID()*
---
Select a random row with MySQL:
SELECT column FROM table
ORDER BY *RAND()*
LIMIT 1
---
Select a random row with PostgreSQL:
SELECT column FROM table
ORDER BY *RANDOM()*
LIMIT 1
SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1
---
Select a random row with IBM DB2
SELECT column, RAND() as IDX
FROM table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
---
Select a random row with Microsoft SQL Server:
SELECT TOP 1 column FROM table
ORDER BY *NEWID()*
---
Select a random row with MySQL:
SELECT column FROM table
ORDER BY *RAND()*
LIMIT 1
---
Select a random row with PostgreSQL:
SELECT column FROM table
ORDER BY *RANDOM()*
LIMIT 1
Tsql ile Dosyaya yazdırma
EXEC master..xp_cmdshell 'osql -S Localhost -U Mir -P 1234 -q "select * from pubs..authors" -o c:\authors.txt'
-U parametresi user bendeki user -->Mir
-P paremetresi Kullanıcı şifresi
-S Parametresi Hangi serverda calısacak
-U parametresi user bendeki user -->Mir
-P paremetresi Kullanıcı şifresi
-S Parametresi Hangi serverda calısacak
Bir Triger örneği
Table1 ve Table2 adlarında iki tablomuz varsa ve Table1 deki bir satır silindiğinde Table2 deki ilgili satırın da silinmesi için:
Table1 (ID-Adı-Soyadı)
Table2 (ID-Table1ID-Adres)
Yani Table1 deki bir kayıt silindiğinde Adres bilgilerinin de silinmesi isteniyor.
CREATE TRIGGER Table1_DELETE ON Table1
FOR DELETE
AS
DECLARE @ID int
Select @ID = ID From deleted
DELETE Table2 Where Table1ID = @ID
Table1 (ID-Adı-Soyadı)
Table2 (ID-Table1ID-Adres)
Yani Table1 deki bir kayıt silindiğinde Adres bilgilerinin de silinmesi isteniyor.
CREATE TRIGGER Table1_DELETE ON Table1
FOR DELETE
AS
DECLARE @ID int
Select @ID = ID From deleted
DELETE Table2 Where Table1ID = @ID
Tsql Exec komutuna örnek
DECLARE @sql varchar(1000), @Tablo varchar(100)
SET @Tablo = 'STOKLAR'
SET @sql = 'Select * From ' + @Tablo
EXEC(@sql)
SET @Tablo = 'STOKLAR'
SET @sql = 'Select * From ' + @Tablo
EXEC(@sql)
For next in MsSql deki karşılığına Örnek
DECLARE @i int
SELECT @i = 1
WHILE (@i<440)
BEGIN
DECLARE @ID int
update usrKasa set Kapandi = 1 where ID = @ID
SELECT @i = @i + 1
END
SELECT @i = 1
WHILE (@i<440)
BEGIN
DECLARE @ID int
update usrKasa set Kapandi = 1 where ID = @ID
SELECT @i = @i + 1
END
Kaydol:
Kayıtlar (Atom)