更新时间:2022-09-21 22:38:33
CREATE TABLE `timeline_raw` (
`rawId` bigint(20) NOT NULL AUTO_INCREMENT,
`uid` bigint(20) DEFAULT NULL,
`did` bigint(20) DEFAULT NULL,
`channelId` char(1) NOT NULL DEFAULT '1' COMMENT '1:qvga; 2:720p',
`fileId` bigint(20) DEFAULT NULL,
`sectionId` bigint(20) DEFAULT NULL,
`headerFilePath` varchar(120) DEFAULT NULL,
`startTime` bigint(20) DEFAULT NULL,
`endTime` bigint(20) DEFAULT NULL,
`updateTime` datetime DEFAULT NULL,
`createTime` datetime DEFAULT NULL,
PRIMARY KEY (`rawId`),
KEY `index_uid_did_startTime` (`uid`,`did`,`startTime`) USING BTREE,
KEY `index_uid_did_endTime` (`uid`,`did`,`endTime`) USING BTREE,
KEY `index_time` (`startTime`) USING BTREE,
KEY `index_uid_did_fileId` (`uid`,`did`,`sectionId`) USING BTREE,
KEY `index_sectionId` (`sectionId`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
|
<select id="getRawFileList" parameterClass="java.util.HashMap" resultClass="com.defonds.mysql.raw.entity.TimelineRaw">
SELECT * FROM timeline_raw_
WHERE uid=#uid#
AND did=#did#
AND channelId=#channelId#
<isNotNull property="sectionId"> AND sectionId = #sectionId#</isNotNull>
AND
(
(startTime BETWEEN #startTime# and #endTime#)
OR
(endTime BETWEEN #startTime# and #endTime#)
OR
(
<![CDATA[
startTime<=#startTime#
]]>
AND
<![CDATA[
endTime>=#endTime#
]]>
)
)
ORDER BY startTime;
</select>
|