多条件查询(Sql拼接)

多条件查询(Sql拼接)

 

关于日期区间的查询

    #region 日期
    string abcd = string.Empty;
    string yy = this.datime2.Value.Year.ToString();
    string mm = this.datime2.Value.Month.ToString();
    string day = this.datime2.Value.Day.ToString();


    if (mm.Equals("2") && day.Equals("28") || mm.Equals("2") && day.Equals("29") || mm.Equals("2") && day.Equals("30"))
    {
        abcd = yy + "/" + 3 + "/" + 1;
    }
    else if (mm.Equals("1") && day.Equals("31") || mm.Equals("3") && day.Equals("31") || mm.Equals("5") && day.Equals("31") || mm.Equals("7") && day.Equals("31") || mm.Equals("8") && day.Equals("31") || mm.Equals("10") && day.Equals("31"))
    {
        abcd = yy + "/" + (Convert.ToInt32(mm) + 1).ToString() + "/" + 1;
    }
    else if (mm.Equals("12") && day.Equals("31"))
    {
        abcd = (Convert.ToInt32(yy) + 1) + "/" + 1 + "/" + 1;
    }
    else if (mm.Equals("4") && day.Equals("30") || mm.Equals("6") && day.Equals("30") || mm.Equals("9") && day.Equals("30") || mm.Equals("11") && day.Equals("30"))
    {
        abcd = yy + "/" + (Convert.ToInt32(mm) + 1).ToString() + "/" + 1;
    }
    else
    {
        string days = (Convert.ToInt32(day) + 1).ToString();
        abcd = yy + "/" + mm + "/" + days;
    }
    #endregion 日期

    smhandOverLineModel.lastModifiedS = Convert.ToDateTime(abcd);


 


 

 

DAL层拼接查询

        /// <summary>
        /// 根据多条件进行高级查询
        /// </summary>
        /// <param name="smhandOverModel"></param>
        /// <returns></returns>
        public IList<SmhandOverLineModel> SelectSmhandOverSerach(SmhandOverLineModel smhandOverLineModel)
        {
            string sql = "select productcode,productname,sum(realqty) realqty,state,lastmodified from SmhandOverLine where 1 = 1 ";
            if (smhandOverLineModel != null)
            {
                if (smhandOverLineModel.productCode != null && !smhandOverLineModel.productCode.Trim().Equals(""))
                {
                    sql += string.Format(" and productCode = '{0}'", smhandOverLineModel.productCode);
                }
                if (smhandOverLineModel.lastModified != null && smhandOverLineModel.lastModified.ToString() != "")
                {
                    sql += string.Format("and lastModified between '{0}' and '{1}'", smhandOverLineModel.lastModified, smhandOverLineModel.lastModifiedS);
                }
                if (smhandOverLineModel.state != null && !smhandOverLineModel.state.Trim().Equals(""))
                {
                    sql += string.Format(" and state = '{0}'", smhandOverLineModel.state);
                }
            }
            sql += "group by  productcode,productname,state,lastmodified order by productcode";
            return base.SelectIn<SmhandOverLineModelPurchase>(sql);
        }


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值