protected override void VisitWhere(ExpressionVisitorContext context, UpdateStatement statement, IExpression where)
        {
            /*
             * 注意:由于 MySQL 的 UPDATE 语句不支持 FROM 子句,因此必须将其改写为多表修改的语法。
             * 由于 FROM 子句中可能包含 JOIN 类型语句,所以必须将 JOIN 子句中的条件式添加到 UPDATE 语句的 WHERE 子句中。
             */

            if (statement.HasFrom)
            {
                var conditions = ConditionExpression.And();

                foreach (var source in statement.From)
                {
                    if (source is JoinClause join)
                    {
                        conditions.Add(join.Conditions);
                    }
                }

                if (conditions.Count > 0)
                {
                    conditions.Add(where);
                    where = conditions;
                }
            }

            //调用基类同名方法
            base.VisitWhere(context, statement, where);
        }