/// <summary> /// 添加查询的列 /// </summary> /// <param name="table">表名</param> /// <param name="column">列名</param> /// <param name="query">是否查询此列</param> /// <param name="alias">别名</param> /// <returns></returns> public SqlBuilderMultiple AddColumn(string table, string column, string alias = null, bool query = true) { if (!query) { return(this); } var firstAdd = true; if (QueryColumn.Length > 0) { //移除末尾字符 QueryColumn.Remove(QueryColumn.Length - 1, 1); firstAdd = false; } if (string.IsNullOrEmpty(alias)) { QueryColumn.Append($", [{table}].[{column}] "); } else { QueryColumn.Append($", [{table}].[{column}] as [{alias}] "); } if (firstAdd) { //移除开始字符 QueryColumn.Remove(0, 2); } return(this); }
/// <summary> /// 子查询列 /// </summary> /// <param name="queryString"></param> /// <param name="alias"></param> /// <param name="query"></param> /// <returns></returns> public SqlBuilderMultiple AddChildQueryColumn(string queryString, string alias, bool query = true) { if (!query) { return(this); } var firstAdd = true; if (QueryColumn.Length > 0) { //移除末尾字符 QueryColumn.Remove(QueryColumn.Length - 1, 1); firstAdd = false; } QueryColumn.Append($", ({queryString}) as [{alias}] "); if (firstAdd) { //移除开始字符 QueryColumn.Remove(0, 2); } return(this); }