Skip to content

Instantly share code, notes, and snippets.

@pumpkinpietea
Last active October 31, 2016 18:49
-- 日付の藩士指定
SELECT * FROM dual where [date] >= convert(datetime,'01/01/2015',101);
--- NULL と Blankを除く
WHERE COALESCE ([column_name], '') <> ''
-- 日付データから時間情報をカット、Oracleの Trunc()の代替 -- SQLSERVER 2008 以上
cast(<DATE> as DATE)
-- 日付データから時間情報をカット、Oracleの Trunc()の代替 -- SQLSERVER 2008 未満
dateadd(dd, datediff(dd,0, <DATE>), 0)
-- 日付データから時間情報をカット、Oracleの Trunc()の代替 -- SQLSERVER 2008 以上
WHERE (@FROM IS NULL or cast(<DATE> as DATE) >= @FROM)
AND (@TO IS NULL or cast(<DATE> as DATE) <= @TO)
-- 日付データから時間情報をカット、Oracleの Trunc()の代替 -- SQLSERVER 2008 未満
WHERE (@FROM IS NULL or dateadd(dd, datediff(dd,0, <DATE>), 0) >= @FROM)
AND (@TO IS NULL or dateadd(dd, datediff(dd,0, <DATE>), 0) <= @TO)
-- ダミーテーブル Oracle のDualの代替 - FROM句を付けないだけ!
select cast(getdate() as DATE)
-- Transaction log
select * from ::fn_dblog(null,null)
‐‐ シングルユーザーモード変更
ALTER DATABASE foo SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
-- DBのリネーム
EXEC sp_renamedb 'oldname', 'newname';
-- 改行削除
REPLACE(REPLACE(FirstName, CHAR(13), ''), CHAR(10), '')
-- Rollback 出来るようにSQLを流す
BEGIN TRANSACTION
DELETE FROM <table> WHERE ....
-- Commit する
COMMIT TRANSACTION
ーー Rollback する
ROLLBACK TRANSACTION
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment