我只有你们了,连我最好的朋友也不理解我'两件事
'一.忙个烂项目,忙到现在,那些就不谈了。我从6.18到今天,早8晚10,没有休息过1下,本来就很郁闷的。 今天老板居然又怀疑我有藏私。
听我细细道来,他问我,
select a.ship_code ……from HY_charges b LEFT JOIN HY_ship a ON(b.ship_code=a.ship_code)…… WHERE…… Group BY a.ship_code……ORDER BY a.ship_code……
这句话里面为什么select 那里要用a.ship_code,我说你两张表都有ship_code,产生歧异,要用a.来指明现在要的是a.ship_code.
他又问为什么不能是b.ship_code ,我说b.ship_code也可以,反正你连表的条件是 =
妈的,他弄了5分钟,居然跳过来跟我说用b.ship_code不行,他试过了,这里一定要用a.ship_code,然后跟我扯什么研究生每年都这样是不行的,要把经验留下来。我操,把我肺都气炸了,搞了半天他以为我有点技术就觉得了不起,要留一手,我说可以的,a.ship_code也行,他马上就试,结果有语法错,我当时有点晕,而且我怕控制不住自己,就说那我回去看一下。坐在我自己机子上,一查询,才发现他改了select 的和group by 的,但是没有改order by 的a.ship_code,所以错,我把那个地方改过来就一切ok了,我跟他讲,他半信半疑,试试后,把我桌上的sql书拿过去看了,我靠……老子他妈要是那种人,他这个烂项目早就不用混了……气晕。

解决方案 »

  1.   

    楼主,你辛苦了!!!SELECT a.ship_code,ship_name,f.port_code,a.voyages_code,f.voyages_port_type_code AS Type,voyages_port_SN AS SN, CONVERT(DECIMAL,DATEDIFF(minute,voyages_start_time,voyages_unload_end_time))/1440 AS VTime, voyages_port_arrive_port_time AS ArriveTime,voyages_port_off_berth_time AS LiveTime,voyages_port_to_berth_time AS ToBerthTime, CONVERT(DECIMAL,IsNull((IsNull((Select Sum(Datediff(minute,voyages_port_arrive_port_time,voyages_port_off_berth_time))  From HY_voyages_port ABC INNER JOIN HY_voyages_not_business ABCD  ON ABC.ship_code=ABCD.ship_code AND ABC.voyages_code=ABCD.voyages_code   WHERE ABC.ship_code=a.ship_code AND ABC.voyages_code=a.voyages_code AND Datediff(minute,voyages_not_business_event_start_time,voyages_port_arrive_port_time)>0  AND Datediff(minute,voyages_port_off_berth_time,voyages_not_business_event_end_time)>0  AND NOT voyages_port_off_berth_time Is Null AND voyages_port_off_berth_time<>'1900-1-1'),0)+IsNull( (Select Sum(DateDiff(minute,voyages_not_business_event_start_time,voyages_port_off_be
    rth_time))  From HY_voyages_port ABC1 INNER JOIN HY_voyages_not_business ABCD1  ON ABC1.ship_code=ABCD1.ship_code AND ABC1.voyages_code=ABCD1.voyages_code   WHERE ABC1.ship_code=a.ship_code AND ABC1.voyages_code=a.voyages_code AND DateDiff(minute,voyages_not_business_event_start_time,voyages_port_arrive_port_time)<=0  AND DateDiff(minute,voyages_not_business_event_start_time,voyages_port_off_berth_time)>0  AND Datediff(minute,voyages_port_off_berth_time,voyages_not_business_event_end_time)>0),0)+IsNull( (Select Sum(DateDiff(minute,voyages_port_arrive_port_time,voyages_not_business_event_end_time))  From HY_voyages_port ABC2 INNER JOIN HY_voyages_not_business ABCD2  ON ABC2.ship_code=ABCD2.ship_code AND ABC2.voyages_code=ABCD2.voyages_code  WHERE ABC2.ship_code=a.ship_code AND ABC2.voyages_code=a.voyages_code AND DateDiff(minute,voyages_not_business_event_end_time,voyages_port_arrive_port_time)<0  AND DateDiff(minute,voyages_not_business_event_start_time,voyages_port_arrive_port_time)>0  AND DateDiff(minute,v
    oyages_not_business_event_end_time,voyages_port_off_berth_time)>=0),0)+IsNull((Select Sum(voyages_not_business_time*60)  From HY_voyages_port ABC INNER JOIN HY_voyages_not_business ABCD  ON ABC.ship_code=ABCD.ship_code AND ABC.voyages_code=ABCD.voyages_code   WHERE ABC.ship_code=a.ship_code AND ABC.voyages_code=a.voyages_code AND Datediff(minute,voyages_port_arrive_port_time,voyages_not_business_event_start_time)>=0  AND Datediff(minute,voyages_not_business_event_end_time,voyages_port_off_berth_time)>=0),0)),0))/1440 AS NotBussinessStop, CONVERT(DECIMAL, ISNULL((Select Sum(IsNull(voyages_not_business_time,0)) From HY_voyages_not_business  WHERE ship_code=a.ship_code AND voyages_code=a.voyages_code),0)) /24 AS NotBussiness,c.ship_rated_unload_speed AS Speed FROM  HY_voyages_unload a  INNER   JOIN  HY_voyages   b  ON  (  a.ship_code=b.ship_code  AND  a.voyages_code=b.voyages_code  ) INNER JOIN HY_ship c ON (c.ship_code=a.ship_code)  INNER   JOIN  HY_voyages_port   f  ON  (  a.ship_code=f.ship_code  AND  a.voya
    ges_code=f.voyages_code  ) WHERE  DATEDIFF(minute,'2003-12-31 18:00',voyages_unload_end_time)>=0 AND DATEDIFF(minute,'2004-01-31 18:00',voyages_unload_end_time)<=0 AND (voyages_unload_end_time Is Not Null AND voyages_unload_end_time<>'1900-1-1') AND a.client_big_class_code='001' AND a.client_small_class_code='001'
      

  2.   

    哇哇哇~~ CoolCHEN 也太不人道了吧^_^我还没看完就倒下了ZZzzzzz.......
      

  3.   

    楼上的是我师兄,那个sql有一大半是他教我的:)
      

  4.   

    TO:dongge2000(秋日私语) ( ) 信誉:105 
    如果我有枪,我也会