一些復合型別進行正規化分解是沒有必要的,尤其是一些統一模型的情況下
setnocount on
declare
@i timebalance
set@i = cast('d/2015-1-1/7' as timebalance)
select
@iselect
@i.tostring()
select
@i.totimestring()
select
@i.distance() as distance;
with
a as ( select '100' s ,
'' m
union
allselect '281474976710693' s ,
'37次' m
union
allselect 'y/2015-1-5/1' s ,
'包年' m
union
allselect 'm/2015-1-5/11' s ,
'包個月' m
union
allselect 'd/2015-1-1/7' s ,
'包天' m
union
allselect '1500438729850887' s ,
'包天' m
union
allselect 'h/2015-1-5 8:30/10' s ,
'包小時' m
clr 整合的效能
操作 udt 資料
using system;
using system.data;
using system.data.sqlclient;
using system.data.sqltypes;
using microsoft.sqlserver.server;
///
/// 時間錢包餘額型別
///
///
///
/// 基於長整型,結構如下:
/// 包時型別2b,起始時間utc秒數4b,時間總長2b(單位同型別決定)
/// 包時型別:0不包時1秒2分3時4日5月6年
///
///
[serializable]
[microsoft.sqlserver.server.sqluserdefinedtype(format.native)]
public
struct timebalance : inullable
//", (timeenum)type, utcsecondtodatetime(startsecond).tostring("yyyy-mm-dd hh:mm:ss"), value);}}
public
string tohex()
public
string totimestring()
return
string.format("//", (timeenum)type, utcsecondtodatetime(startsecond).tostring(format), endtime().tostring(format));}}
public
long tovalue()
}public
static timebalance parse(sqlstring s)
else
}return u;
}catch (exception ex)
}public
bool isnull
}public
static timebalance null
}public
long distance()
public datetime endtime()
}#region 獲取utc
public
static
int datetimetoutcsecond(datetime datetime)
static datetime utcsecondtodatetime(int second)
#endregion
// 這是佔位符成員字段
public
int startsecond;
public
short type;
public
long
value;
static
readonly datetime utc = timezoneinfo.converttimetoutc(new datetime(1970, 1, 1), timezoneinfo.utc);
// 私有成員
private
bool _null;
}public
enum timeenum
C C 程式設計 使用者自定義型別
include struct vector 表示通過非const引用的方式傳遞v,這樣vector init就可以修改v指向的變數了 void vector init vector v,int s void f vector v,vector rv,vector pv using namespace...
C語言 自定義函式使用用例
輸入9,輸出9 9口訣表,輸出12,輸出12 12的乘法口訣表。include 實現函式init 初始化陣列 實現empty 清空陣列 實現reverse 函式完成陣列元素的逆置。要求 自己設計函式的引數,返回值。include include int init int arr return0 in...
帝國CMS使用使用者自定義函式取發表的新聞數
新增使用者自定義函式 1.函式內容如下 複製 如下 php function user newstotal userid ecms news where userid userid.num empirewww.cppcns.com gettotal query echo num 2.將函式內容複製到...