From adb49034964ffa4908036241ebe34793bad5ed53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BD=98=E5=BB=BA=E4=B8=9C?= <617601767@qq.com> Date: Sat, 16 Mar 2024 13:03:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=8F=82=E6=95=B0=E5=91=BD?= =?UTF-8?q?=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Hadoop/ZKLT.Hadoop/TableService.cs | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/Hadoop/ZKLT.Hadoop/TableService.cs b/Hadoop/ZKLT.Hadoop/TableService.cs index 6e3dbae..7f74144 100644 --- a/Hadoop/ZKLT.Hadoop/TableService.cs +++ b/Hadoop/ZKLT.Hadoop/TableService.cs @@ -27,6 +27,7 @@ namespace ZKLT.Hadoop /// 参数 private void MergeWhere(HDP_Table table, Dictionary? where, Dictionary? row, StringBuilder command, Dictionary param) { + string _guid = ""; //执行条件 StringBuilder _wherestr = new StringBuilder(); _wherestr.Append("WHERE 1 = 1"); @@ -40,8 +41,9 @@ namespace ZKLT.Hadoop switch (where[_column.Key!]) { case HDP_WhereType.LIKE: - _wherestr.Append($@" AND `{_column.Key!}` {where[_column.Key!]} CONCAT('%',@{_column.Key!},'%')"); - param.Add(_column.Key!, row![_column.Key!]); + _guid = Guid.NewGuid().ToString("N"); + _wherestr.Append($@" AND `{_column.Key!}` {where[_column.Key!]} CONCAT('%',@{_guid},'%')"); + param.Add(_guid, row![_column.Key!]); break; case HDP_WhereType.BETWEEN: if (row![_column.Key!] != null) @@ -51,20 +53,23 @@ namespace ZKLT.Hadoop { if (_betweendata[0] != null && _betweendata[0].ToString() != "") { - _wherestr.Append($@" AND `{_column.Key!}` >= @{_column.Key!}0"); - param.Add(_column.Key! + "0", _betweendata[0]); + _guid = Guid.NewGuid().ToString("N"); + _wherestr.Append($@" AND `{_column.Key!}` >= @{_guid}"); + param.Add(_guid, _betweendata[0]); } if (_betweendata[1] != null && _betweendata[1].ToString() != "") { - _wherestr.Append($@" AND `{_column.Key!}` <= @{_column.Key!}1"); - param.Add(_column.Key! + "1", _betweendata[1]); + _guid = Guid.NewGuid().ToString("N"); + _wherestr.Append($@" AND `{_column.Key!}` <= @{_guid}"); + param.Add(_guid, _betweendata[1]); } } } break; default: - _wherestr.Append($@" AND `{_column.Key!}` {where[_column.Key!]} @{_column.Key!}"); - param.Add(_column.Key!, row![_column.Key!]); + _guid = Guid.NewGuid().ToString("N"); + _wherestr.Append($@" AND `{_column.Key!}` {where[_column.Key!]} @{_guid}"); + param.Add(_guid, row![_column.Key!]); break; } } @@ -108,6 +113,7 @@ namespace ZKLT.Hadoop /// private string MergeOrder(HDP_Table table, Dictionary? order, Dictionary param) { + string _guid = ""; StringBuilder _orderstr = new StringBuilder(); if (order != null && order.Count > 0) { @@ -135,7 +141,7 @@ namespace ZKLT.Hadoop _orderstr.Append(@$"CASE `{_column.Key!}`"); for (var i = 0; i < _orderTemp!.Length; i++) { - var _guid = Guid.NewGuid().ToString("N"); + _guid = Guid.NewGuid().ToString("N"); _orderstr.Append(@$" WHEN @{_guid} THEN {i}"); param.Add(_guid, _orderTemp[i]); }