巧拼SQL语句
来源:互联网 发布:北京知象科技龙白滔 编辑:程序博客网 时间:2024/04/27 20:59
http://www.cnblogs.com/eavia/archive/2011/01/21/1940963.html
public DataTable GetDataTable(KeyValuePair<string, object>[] KeyValue)
{
StringBuilder strSql = new StringBuilder();
string languageTag = SYS.Cmn.SysCmnVar.LanguageTag;
strSql.Append(@"SELECT BT.*,warn.DATANAME AS 'ProductsWarning' FROM ({0}) BT INNER JOIN (SELECT DISTINCT DATAVALUE,DATANAME FROM tab_datafunctionstatus datawry WHERE (datawry.FunctionStatus='StorageProductsMinWarning' OR datawry.FunctionStatus='StorageProductsMaxWarning') AND datawry.dataLanguage='" + languageTag + "') warn");
strSql.Append(" On BT.WarningStatus=warn.dataValue ");
if (KeyValue.Length != 0)
{
strSql.Append(" Where 1=1 ");
for (int i = 0; i < KeyValue.Length; i++)
{
KeyValuePair<string, object> obj = KeyValue[i];
string [] metaDataArray=((string)FMap[obj.Key]).Split('|');
StringBuilder temp = new StringBuilder(CondinOuterText);
temp.Replace("#Null$", metaDataArray[0])
.Replace("#FiledName#","BT." + metaDataArray[2])
.Replace("#Option#", metaDataArray[1])
.Replace("#Value$", string.Format(metaDataArray[3], obj.Value.ToString()));
strSql.Append(temp.ToString());
}
}
string sqlcomplete = string.Format(strSql.ToString(), BaseSqlString);
return SYS.Cmn.MySqlControl.SQLServerHelper.Query_DataTable(sqlcomplete);
}
static Hashtable FMap = null;
static DACStorageProductsQuery()
{
FMap = new Hashtable();
FMap.Add("products_name", "''|=|products_name|'{0}'");
FMap.Add("storage_name", "''|=|storage_name|'{0}'");
FMap.Add("manufacturers_company", "''|=|manufacturers_company|'{0}'");
FMap.Add("ProductsWarning", "''|=|ProductsWarning|'{0}'");
FMap.Add("productiondatebegin", "''|<=|productiondate|'{0}'");
FMap.Add("productiondateend", "''|=>|productiondate|'{0}'");
FMap.Add("products_price_summin", "0|<=|products_price_sum|{0}");
FMap.Add("products_price_summax", "0|=>|products_price_sum|{0}");
FMap.Add("mafuproductiondatebegin", "''|<=|mafuproductiondate|'{0}'");
FMap.Add("mafuproductiondateend", "''|=>|mafuproductiondate|'{0}'");
FMap.Add("products_amount_summin", "0|<=|products_amount_sum|{0}");
FMap.Add("products_amount_summax", "0|=>|products_amount_sum|{0}");
}
const string CondinOuterText = @" AND ( #Null$ = #FiledName# OR #Value$ #Option# #FiledName# ) ";
- 巧拼SQL语句
- 拼SQL语句执行更新
- EOS中拼SQL语句的问题
- 拼sql语句统计表中数据
- Java 读取csv文件拼sql语句
- 存储过程中对输出参数拼sql语句查询
- 通过拼sql语句实现分页读取数据
- 【项目经验】上传excel 之拼SQL语句
- SQL注入专题--整理帖 && like 语句拼sql 如何防止注入攻击。
- ms sql拼表
- ibatis拼sql方法
- Excel中拼SQL
- SQL拼串查询
- SQL中拼日期
- 关于拼sql语句执行与直接执行存储过程的效率比较
- mysql存储过程中根据传入参数,动态拼sql语句并且执行
- Sql汉字转换成全拼
- 拼
- EXCEL
- css的cursor属性
- GRASP——General Responsiblity Assignment Software Patterns
- 年关
- 串口通信中接收数据时延迟处理与缓存处理的解决方案(C#)
- 巧拼SQL语句
- hello world.
- Excep Import
- C# 检查文件夹和文件是否存在
- Js 实现将table的行列的值填充到TEXTBOX
- ASP.NET 2.0 使用Membership
- GoF
- TreeView的自定义右键菜单(半原创)
- MPEG-2压缩编码技术原理应用