需求
- 表中的 站点索引 字段,最大的 就是 终点站
- 表中 是根据 线路ID,区分 是哪个线路的 站点的
- 现在要把这些终点站 查询出来
- 站点的上下行 字段,区分这个站点是 上行还是下行
- 查询首发站,直接 索引为1就行。
- 也可以把下面的SQL,改为min
查出 上下行 线路ID 的 最大索引
SELECT
max( t1.STATION_INDEX ) STATION_INDEX,
t1.ROUTE_ID,
t1.ROUTE_DIRECTION
FROM
config_basic_station t1
GROUP BY
t1.ROUTE_ID,
t1.ROUTE_DIRECTION
16 20001 0
16 20001 1
10 20002 0
9 20002 1
使用from 多个表关联即可
SELECT
cbs.ROUTE_ID,
cbs.STATION_NAME,
cbs.STATION_INDEX,
cbs.ROUTE_DIRECTION
FROM
config_basic_station cbs,
(
SELECT
max( t1.STATION_INDEX ) STATION_INDEX,
t1.ROUTE_ID,
t1.ROUTE_DIRECTION
FROM
config_basic_station t1
GROUP BY
t1.ROUTE_ID,
t1.ROUTE_DIRECTION
) t2
WHERE
cbs.ROUTE_ID = t2.ROUTE_ID
AND cbs.STATION_INDEX = t2.STATION_INDEX
AND cbs.ROUTE_DIRECTION = t2.ROUTE_DIRECTION
10231 南桥汽车站 75 0
10231 德翔路新德西路 75 1
10245 通耀路耀龙路 37 0
10245 五莲路双桥路 36 1
表结构
CREATE TABLE `config_basic_station` (
`ID` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT,
`STATION_ID` varchar(20) DEFAULT NULL,
`STATION_NAME` varchar(40) DEFAULT NULL,
`ROUTE_ID` int(11) DEFAULT NULL,
`ROUTE_DIRECTION` tinyint(1) DEFAULT NULL,
`STATION_INDEX` int(11) DEFAULT NULL,
`IS_TERMINAL_MOUNT` tinyint(4) DEFAULT '0',
`TERMINAL_ID` varchar(20) DEFAULT NULL,
`TERMINAL_ID_OLD` varchar(20) DEFAULT NULL COMMENT '库里原本的数据保存',
`FORMAL` int(2) NOT NULL DEFAULT '1' COMMENT '1非正式数据,2正式数据。我们的逻辑',
`PORT_INDEX` tinyint(4) DEFAULT NULL,
`LONGITUDE` decimal(11,6) DEFAULT NULL,
`LATITUDE` decimal(11,6) DEFAULT NULL,
`MESSAGERECORD` varchar(100) DEFAULT NULL,
`GRID` bigint(20) DEFAULT '0',
`EARLYBUS` varchar(10) DEFAULT NULL COMMENT '早班车时间',
`LASTBUS` varchar(10) DEFAULT NULL COMMENT '末班车时间',
`INTERVALNUM` int(11) DEFAULT NULL COMMENT '灯珠间隔',
`GREET_STATION` int(11) DEFAULT '0' COMMENT '是否为招呼站(0非招呼站,1是招呼站)',
`PD_CODE` varchar(64) DEFAULT NULL COMMENT '上海市统一编码',
`UNREAL_TERMINAL_ID` varchar(20) DEFAULT NULL COMMENT '虚拟设备号',
PRIMARY KEY (`ID`) USING BTREE,
KEY `TERMINAL_ID` (`TERMINAL_ID`) USING BTREE,
KEY `ROUTE_ID` (`ROUTE_ID`) USING BTREE,
KEY `STATION_ID` (`STATION_ID`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=250863 DEFAULT CHARSET=gbk ROW_FORMAT=COMPACT;