開始做項目管理了(本人3年java,來到這邊之後真沒想到...),天天開會溝通整理需求,他們講話的時候忙裡偷閑整理一下常用的方法,其實語言還是有共通性的,基本上看到方法名就大概能猜出來用法。出去打水的時候看到外面太陽好好,真想在外面坐著曬太陽,回來的時候好兄弟三年前送給我的鍵盤D鍵不靈了,在打"等待 ...
開始做項目管理了(本人3年java,來到這邊之後真沒想到...),天天開會溝通整理需求,他們講話的時候忙裡偷閑整理一下常用的方法,其實語言還是有共通性的,基本上看到方法名就大概能猜出來用法。出去打水的時候看到外面太陽好好,真想在外面坐著曬太陽,回來的時候好兄弟三年前送給我的鍵盤D鍵不靈了,在打"等待領導確定"這句話的時候綳不住了,我的人生乾脆給AI生成算了
邏輯判斷
IIF
//類似於三元表達式了
SqlFunc.IIF(it.EnabledMark == 1, "正常", "停用")
Equals
//是否相等
SqlFunc.Equals(object thisValue, object parameterValue)
IsNull
//判斷是否為空,不為空為後面參數值
SqlFunc.IsNull<TResult>(TResult thisValue, TResult ifNullValue)
//判斷是否為空,返回bool
SqlFunc.IsNullOrEmpty(object thisValue)
GreaterThan
//大於
SqlFunc.GreaterThan(object thisValue, object gtValue)
//大於等於
SqlFunc.GreaterThanOrEqual(object thisValue, object gtValue)
LessThan
//小於
SqlFunc.LessThan(object thisValue, object ltValue)
//小於等於
SqlFunc.LessThanOrEqual(object thisValue, object ltValue)
Between
//在區間內
Between(object value, object start, object end)
子查詢
Subqueryable
//子查詢
SqlFunc.Subqueryable<T> Subqueryable<T>() where T : class, new()
//查詢數據字典數據
SqlFunc.Subqueryable<DictionaryDataEntity>().Where(w => it.TransportMethod == w.EnCode && w.DictionaryTypeId == "xxx").Select(w => w.FullName)
時間函數
DateIsSame
//是否是同一時間 (DateType時間類型 年、月、天、小時、分鐘、秒、毫秒)
SqlFunc.DateIsSame(DateTime date1, DateTime date2, DateType dataType)
//同一天 SqlFunc.DateIsSame(DateTime date1, DateTime date2)
//同一月 it.createDate.ToString("yyyy-MM") == DateTime.Now.ToString("yyyy-MM")
//同一年 createDate.Year == DateTime.Now.Year
DateDiff
//計算時間差
SqlFunc.DateDiff(type, date1, DateTime.Now.AddDays(1))
DateAdd
//按照類型 給日期加時間
SqlFunc.DateAdd(DateTime date, int addValue, DateType dataType)
DateValue
//按照類型 獲取時間
SqlFunc.DateValue(DateTime date, DateType dataType);
聚合函數
AggregateSum
//求和
SqlFunc.AggregateSum<TResult>(TResult thisValue)
//求和,過濾null
SqlFunc.AggregateSumNoNull<TResult>(TResult thisValue)
AggregateAvg
//平均值
SqlFunc.AggregateAvg<TResult>(TResult thisValue)
AggregateMin
//最小
SqlFunc.AggregateMin(TResult thisValue)
AggregateMax
//最大
SqlFunc.AggregateMax<TResult>(TResult thisValue)
AggregateCount
//統計總數
SqlFunc.AggregateCount<TResult>(TResult thisValue)
//去重之後 統計總數
SqlFunc.AggregateDistinctCount<TResult>(TResult thisValue)
數字函數
Round
//四捨五入 精度
SqlFunc.Round<T>(T value, int precision)
Abs
//絕對值
SqlFunc.Abs<T>(T value)
字元串函數
Substring
//截取字元串
SqlFunc.Substring(object value, int index, int length)
Replace
//替換字元串
SqlFunc.Replace(object value, string oldChar, string newChar)
ToLower
//轉小寫
SqlFunc.ToLower(object thisValue)
ToUpper
//轉大寫
SqlFunc.ToUpper(object thisValue)
Trim
//去除前後空格
SqlFunc.Trim(object thisValue)
Stuff
//指定位置替換
SqlFunc.Stuff(string sourceString, int start, int length, string AddString)
Contains
//類似於模糊查詢 like '%parameterValue%'
SqlFunc.Contains(string thisValue, string parameterValue)
//查詢字元串開頭 類似於模糊查詢 like 'parameterValue%'
SqlFunc.StartsWith(object thisValue, string parameterValue)
//查詢字元串結尾 類似於模糊查詢 like '%parameterValue'
SqlFunc.EndsWith(object thisValue, string parameterValue)
Length
//字元串長度
SqlFunc.Length(object value)
類型轉換
SqlFunc.ToInt32(object value)
SqlFunc.ToInt64(object value)
SqlFunc.ToDate(object value)
SqlFunc.ToString(object value)
SqlFunc.ToVarchar(object value)
SqlFunc.ToDecimal(object value)
SqlFunc.ToGuid(object value)
SqlFunc.ToDouble(object value)
SqlFunc.ToBool(object value)