MySQL找到可切换source_port和destination_port的最繁忙的2条装运线

时间:2018-12-13 18:08:47

标签: mysql

表的结构为

create table t_hr_ship 
    (shipment_id int,
     shipper_id int,
     source_port varchar(20),
     destination_port varchar(20));

问题是:找到最繁忙的3条线路,并为这些最繁忙的线路打印两个端口。对于两批货物,一个是从A到B,另一个是从B到A,它们在同一行(在相同的两个目的地之间),因此应在该行中将其装运加在一起。

我正在考虑创建一个新列“行”,该列将source_port和destination_port串联在一起,但是不知道如何切换源,目的是同一行。

1 个答案:

答案 0 :(得分:0)

如果端口号不是按升序排列的,则可以使用libutils.{so|a}来切换端口。然后按一对有序的帖子分组,按//DONT WORK //makecontext(&context.uctx_source,(void*)Write,1,*length); //makecontext(&context.uctx_target,(void*)Read,0); mycoroutines_create(&context.uctx_source,(void *)Write,length); mycoroutines_create(&context.uctx_target,(void *)Read,length); 降序排列结果,并使用int mycoroutines_create(ucontext_t *coroutine,void (body)(void *),void *arg) { makecontext(coroutine,(void *)body,1,(int *)arg); if(errno != 0){ perror("Error reported by makecontext()"); return -1; } else { perror("not enough storage for stack"); abort(); } return 0; } 仅获得前3名。

CASE