Skip to content

Instantly share code, notes, and snippets.

View ststeiger's full-sized avatar
😎
Back from holidays

Stefan Steiger ststeiger

😎
Back from holidays
  • Switzerland
View GitHub Profile
@ststeiger
ststeiger / fu_get_ISOWeek.sql
Created July 1, 2015 15:22
Get ISO-Week and year string from date
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[fu_get_ISOWeek]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[fu_get_ISOWeek]
GO
-- PRE: Valid datetime
-- POST: ISO week number + '/' + year, NULL on NULL
CREATE FUNCTION [dbo].[fu_get_ISOWeek](@dtDate as DATETIME)
@ststeiger
ststeiger / fu_get_ISOWeek_SQL2005.sql
Created July 1, 2015 15:24
Get ISO week & year from date in SQL-Server 2005
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[fu_get_ISOWeek_SQL2005]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[fu_get_ISOWeek_SQL2005]
GO
-- Return the ISO week of the year regardless of the DATEFIRST session SETting.
CREATE FUNCTION [dbo].[fu_get_ISOWeek_SQL2005](@dtDate AS datetime)
RETURNS nvarchar(7) WITH RETURNS NULL ON NULL INPUT
@ststeiger
ststeiger / fu_RPT_RemoveChars.sql
Created July 1, 2015 15:26
Remove all non-number chars from varchar
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[fu_RPT_RemoveChars]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[fu_RPT_RemoveChars]
GO
CREATE FUNCTION [dbo].[fu_RPT_RemoveChars](@Input varchar(50))
@ststeiger
ststeiger / Guid_Empty.sql
Created July 1, 2015 15:27
Get empty GUID
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[NUID]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[NUID]
GO
CREATE FUNCTION [dbo].[NUID]()
RETURNS uniqueidentifier
@ststeiger
ststeiger / udf_TitleCase.sql
Created July 1, 2015 15:28
Text to title-case SQL
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[udf_TitleCase]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[udf_TitleCase]
GO
CREATE FUNCTION [dbo].[udf_TitleCase] (@InputString VARCHAR(4000) )
@ststeiger
ststeiger / fu_IsLeapYear.sql
Created July 1, 2015 15:30
Check if year is leap-year
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[fu_IsLeapYear]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[fu_IsLeapYear]
GO
-- ========================================================================
@ststeiger
ststeiger / fn_OverlappingDateRangesDays.sql
Last active August 29, 2015 14:24
PostGre: Calculate number of overlapping days in two date ranges
DROP FUNCTION IF EXISTS fn_OverlappingDateRangesDays(
__firstStart timestamp without time zone
,__firstEnd timestamp without time zone
,__secondStart timestamp without time zone
,__secondEnd timestamp without time zone);
CREATE OR REPLACE FUNCTION fn_OverlappingDateRangesDays(
__firstStart timestamp without time zone
,__firstEnd timestamp without time zone
,__secondStart timestamp without time zone
@ststeiger
ststeiger / DevViews.sql
Created July 14, 2015 13:55
Table Dependency Computation + Foreign-Key Diagnostics
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_DELDATA_CreateForeignKeyRelations]'))
DROP VIEW [dbo].[V_DELDATA_CreateForeignKeyRelations]
GO
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_DELDATA_Tables_All]'))
DROP VIEW [dbo].[V_DELDATA_Tables_All]
GO
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_DEV_FindMissingForeignKeys]'))
@ststeiger
ststeiger / JavaScriptBehaviour
Created July 15, 2015 11:43
JavaScript: Push & new Object by reference
// Very interesting JavaScript behaviour:
var mOptions = {abc:"def", ghi: "jkl"};
console.log(mOptions);
var a = this.mOptions;
console.log(a);
var x = [];
x.push(a);
@ststeiger
ststeiger / ListPotMissing_FKs
Created July 15, 2015 14:35
List potentially missing Foreign Keys
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'dbo._______aaaaaaa') AND type in (N'U'))
DROP TABLE dbo._______aaaaaaa
GO
CREATE TABLE dbo._______aaaaaaa
(