分组查询里面带一个子查询报错 返回
报出的错误
Expression #9 of SELECT list is not in GROUP BY clause and contains nonaggregated column '20000.kc.kcid' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
热忱回答(4)
-
fate sta VIP04天前
发文本,图片我没办法给你改
0 回复 -
天降大任于斯 VIP04天前
Expression<Func<wms_wc_kb_stock, wms_wc_kc_stock, JoinQueryInfos>> joinExpression = (kb, kc) => new JoinQueryInfos(JoinType.Inner, kb.card_no == kc.card_no);
Expression<Func<wms_wc_kb_stock, wms_wc_kc_stock, bool>>? exp = MorelinkExpressionable.Create<wms_wc_kb_stock, wms_wc_kc_stock>()
.AndIF(!arg.card_no.IsNullOrEmpty(), (kb, kc) => kb.card_no == arg.card_no)
.AndIF(!arg.track_no.IsNullOrEmpty(), (kb, kc) => kb.track_no == arg.track_no)
.AndIF(!arg.d_code.IsNullOrEmpty(), (kb, kc) => kb.d_code == arg.d_code)
.AndIF(!arg.ps_type.IsNullOrEmpty(), (kb, kc) => kb.ps_type == arg.ps_type)
.AndIF(arg.card_nos !=null && arg.card_nos.Count > 0, (kb, kc) => !arg.card_nos.Contains(kb.card_no))
.And((kb, kc) => kb.ckid == arg.ckid && SqlFunc.IsNull(kb.bol_no, "") == "" && kb.kc_state == 0)
.ToExpression();
arg.sorts.AddIf(arg.sorts.SortIsNullOrEmpty(), new sortBase() { field = "rk_time", sort = "asc" });
var list = await _wms_wc_kb_stock_rep.GetListPageAsync(joinExpression,(kb,kc)=>new out_wms_wc_kb_stock_bol() { card_no=kb.card_no,
track_no=SqlFunc.AggregateMax(kb.track_no),
d_code= SqlFunc.AggregateMax(kb.d_code),
addr1= SqlFunc.AggregateMax(kb.addr1),
ps_type= SqlFunc.AggregateMax(kb.ps_type),
remark= SqlFunc.AggregateMax(kb.remark),
kw_name= SqlFunc.AggregateMax(kb.kw_name),
kb_num=1,
strmark= SqlFunc.Subqueryable<wms_wc_kc_stock>().Where(z => z.kcid == kc.kcid && !SqlFunc.IsNullOrEmpty(z.mark)).SelectStringJoin(z => z.mark, ","),
rk_time = SqlFunc.AggregateMax(kb.rk_time)
}, exp, (kb, kc) =>kb.card_no, arg.pageindex, arg.pagesize, arg.sorts, cancellationToken);
0 回复 -
天降大任于斯 VIP03天前
@fate sta:
Expression<Func<wms_wc_kb_stock, wms_wc_kc_stock, JoinQueryInfos>> joinExpression = (kb, kc) => new JoinQueryInfos(JoinType.Inner, kb.card_no == kc.card_no);
Expression<Func<wms_wc_kb_stock, wms_wc_kc_stock, bool>>? exp = MorelinkExpressionable.Create<wms_wc_kb_stock, wms_wc_kc_stock>()
.AndIF(!arg.card_no.IsNullOrEmpty(), (kb, kc) => kb.card_no == arg.card_no)
.AndIF(!arg.track_no.IsNullOrEmpty(), (kb, kc) => kb.track_no == arg.track_no)
.AndIF(!arg.d_code.IsNullOrEmpty(), (kb, kc) => kb.d_code == arg.d_code)
.AndIF(!arg.ps_type.IsNullOrEmpty(), (kb, kc) => kb.ps_type == arg.ps_type)
.AndIF(arg.card_nos !=null && arg.card_nos.Count > 0, (kb, kc) => !arg.card_nos.Contains(kb.card_no))
.And((kb, kc) => kb.ckid == arg.ckid && SqlFunc.IsNull(kb.bol_no, "") == "" && kb.kc_state == 0)
.ToExpression();
arg.sorts.AddIf(arg.sorts.SortIsNullOrEmpty(), new sortBase() { field = "rk_time", sort = "asc" });
var list = await _wms_wc_kb_stock_rep.GetListPageAsync(joinExpression,(kb,kc)=>new out_wms_wc_kb_stock_bol() { card_no=kb.card_no,
track_no=SqlFunc.AggregateMax(kb.track_no),
d_code= SqlFunc.AggregateMax(kb.d_code),
addr1= SqlFunc.AggregateMax(kb.addr1),
ps_type= SqlFunc.AggregateMax(kb.ps_type),
remark= SqlFunc.AggregateMax(kb.remark),
kw_name= SqlFunc.AggregateMax(kb.kw_name),
kb_num=1,
strmark= SqlFunc.Subqueryable<wms_wc_kc_stock>().Where(z => z.kcid == kc.kcid && !SqlFunc.IsNullOrEmpty(z.mark)).SelectStringJoin(z => z.mark, ","),
rk_time = SqlFunc.AggregateMax(kb.rk_time)
}, exp, (kb, kc) =>kb.card_no, arg.pageindex, arg.pagesize, arg.sorts, cancellationToken);
0 回复 -
fate sta VIP03天前
var list = await _wms_wc_kb_stock_rep.GetListPageAsync(joinExpression,(kb,kc)=>new out_wms_wc_kb_stock_bol() { card_no=kb.card_no,
track_no=SqlFunc.AggregateMax(kb.track_no),
d_code= SqlFunc.AggregateMax(kb.d_code),
addr1= SqlFunc.AggregateMax(kb.addr1),
ps_type= SqlFunc.AggregateMax(kb.ps_type),
remark= SqlFunc.AggregateMax(kb.remark),
kw_name= SqlFunc.AggregateMax(kb.kw_name),
kb_num=1,
strmark= SqlFunc.Subqueryable<wms_wc_kc_stock>().Where(z => z.kcid ==SqlFunc.AggregateMax( kc.kcid) && !SqlFunc.IsNullOrEmpty(z.mark)).SelectStringJoin(z => z.mark, ","),
rk_time = SqlFunc.AggregateMax(kb.rk_time)
}, exp, (kb, kc) =>kb.card_no, arg.pageindex, arg.pagesize, arg.sorts, cancellationToken);
0 回复