sql问题,求解!!!!!!!

赤红冰川 2021-03-19 10:36:14
SELECT ROUND(COUNT(*)/100,1) AS y,t.ct AS x FROM(
SELECT CASE WHEN SUM(b.BRGEW)<=5 THEN '5'
WHEN SUM(b.BRGEW)>5 AND SUM(b.BRGEW)<=10 THEN '5-10'
WHEN SUM(b.BRGEW)>10 AND SUM(b.BRGEW)<=15 THEN '10-15'
WHEN SUM(b.BRGEW)>15 THEN '15' ELSE NULL END ct
FROM bp_db.bs_AL_SALES_AND_ALLOCATION_QUERIESm a JOIN sap_db.AL_PRODUCT_PLAN b ON a.material_numb=b.c_code

/*join cp_db.bs_org_factory d on a.fact_code=d.zplant*/
WHERE SUBSTR(con_date,1,6)=DATE_FORMAT(DATE_ADD(CURDATE(),INTERVAL -1 MONTH),'%Y%m') AND fact_doc not LIKE '%配送%'
AND tos NOT IN('铁运配送','海运配送') AND sale_office NOT IN ('1020','1019','4650','1021')AND cust_name NOT IN ('分仓货损赔偿一次性客户')
GROUP BY a.or_numb )t GROUP BY t.ct

大佬们,这是完整代码,请问fact_doc,tos,sale_office,cust_name这几个字段对应的是那个表里的。
...全文
381 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenoxy 2021-04-02
  • 打赏
  • 举报
回复
不全,而且连别名都没有,神仙都难猜
笑着宣泄悲伤 2021-03-25
  • 打赏
  • 举报
回复
引用 6 楼 一品梅 的回复:
SELECT COLUMN_NAME,TABLE_NAME,TABLE_SCHEMA FROM INFORMATION_SCHEMA.columns WHERE COLUMN_NAME='字段名';
大佬牛批
一品梅 2021-03-25
  • 打赏
  • 举报
回复
大意了,哈哈
锟斤拷锟斤拷 2021-03-25
  • 打赏
  • 举报
回复
引用 7 楼 一品梅 的回复:
你就这样查询就知道归属于哪个表了
我一点也没看出来打码的列名是F_Ser_detail
lao_yunger 2021-03-25
  • 打赏
  • 举报
回复
在select * from , a表,B表中。。。当字段 有重复时, 必要加别名,以区别。依你上面的问题来看,act_doc,tos,sale_office,cust_name字段前没有加别名以限定字段 从属于哪张表。所以没人知道它属于哪张表
一品梅 2021-03-25
  • 打赏
  • 举报
回复
你就这样查询就知道归属于哪个表了
一品梅 2021-03-25
  • 打赏
  • 举报
回复
SELECT COLUMN_NAME,TABLE_NAME,TABLE_SCHEMA FROM INFORMATION_SCHEMA.columns WHERE COLUMN_NAME='字段名';
以学习为目的 2021-03-25
  • 打赏
  • 举报
回复
兄弟,你这个问题单从语句看是不能确定的,通常语句是要标明a.fact_doc,a.tos,a.sale_office,a.cust_name或者b.这样的。你没有库,没有数据结构说明的话,猜的也不准确啊
morliz子轩 2021-03-20
  • 打赏
  • 举报
回复
引用 楼主 赤红冰川 的回复:
SELECT ROUND(COUNT(*)/100,1) AS y,t.ct AS x FROM( SELECT CASE WHEN SUM(b.BRGEW)<=5 THEN '5' WHEN SUM(b.BRGEW)>5 AND SUM(b.BRGEW)<=10 THEN '5-10' WHEN SUM(b.BRGEW)>10 AND SUM(b.BRGEW)<=15 THEN '10-15' WHEN SUM(b.BRGEW)>15 THEN '15' ELSE NULL END ct FROM bp_db.bs_AL_SALES_AND_ALLOCATION_QUERIESm a JOIN sap_db.AL_PRODUCT_PLAN b ON a.material_numb=b.c_code /*join cp_db.bs_org_factory d on a.fact_code=d.zplant*/ WHERE SUBSTR(con_date,1,6)=DATE_FORMAT(DATE_ADD(CURDATE(),INTERVAL -1 MONTH),'%Y%m') AND fact_doc not LIKE '%配送%' AND tos NOT IN('铁运配送','海运配送') AND sale_office NOT IN ('1020','1019','4650','1021')AND cust_name NOT IN ('分仓货损赔偿一次性客户') GROUP BY a.or_numb )t GROUP BY t.ct 大佬们,这是完整代码,请问fact_doc,tos,sale_office,cust_name这几个字段对应的是那个表里的。
问题看完,感觉看了一地鸡毛。
Hello World, 2021-03-19
  • 打赏
  • 举报
回复
不是a表的就是b表的。 最好手工指定,如果没有指定表,查询的时候会自动去匹配,匹配到谁就是谁了
吉普赛的歌 版主 2021-03-19
  • 打赏
  • 举报
回复
你这问题相当于问一个陌生人:我外婆今天早上吃了什么早餐? 你都不知道,其它人当然更不知道。 没有权限,找有权限的人去要、去问就是了。
赤红冰川 2021-03-19
  • 打赏
  • 举报
回复
哎,我现在只有代码,没有后台的数据库,手工查不了啊

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧