簡體   English   中英

如何選擇具有特定字段值的兩個記錄之間的所有行?

[英]How i can Select all rows between two records with specific field values?

我有一個旅程表。 該表上的列之一是EventType ,它包含一個整數。

EventType只能是1、2或3。

如何選擇具有邏輯的選擇:

查找EventType = 3的記錄,然后選擇之前的所有記錄直到獲得EventType = 1的記錄。

基本上,此表收集旅程的GPS數據( 緯度和經度 )。

EventType = 1表示旅程開始

EventType = 2表示旅程開始和結束之間的所有事件

EventType = 3表示旅程結束

表模式為:

表架構

MySQL並不是很好(我可以執行簡單的Select語句... etc),但是想不到嘗試這種方法的方法。

我認為您可以執行以下操作:

SELECT *
FROM your_table
WHERE id > (SELECT MIN(id) 
            FROM your_table
            WHERE EventType = 1)
  AND id < (SELECT MAX(id) 
            FROM your_table
            WHERE EventType =3)

這可能不是最優雅的解決方案,但是從我的嘗試來看,它確實有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM