我正在開發一個正在進行的項目,其中我正在處理引號
,資料庫結構組織得不好,我無法對資料庫架構進行太多更改來修復它。
在資料庫中:
regular_quotes
和 premium_quotes
是兩個表。 日期/時間
,沒有任何與created_at
相關的列,也沒有備用列
儲存日期/時間
表1
常規引號
id | name | quoteno | status | .....| ------------------------------------------ 1 | name1| RQ-909099 | pending | .....| 2 | name2| RQ-800099 | pending | .....| 3 | name3| RQ-965099 | approved | .....|
表2
premium_quotes
id | name | quoteno | status | .....| ------------------------------------------ 1 | name1| PQ-209099 | pending | .....| 2 | name2| PQ-300099 | pending | .....| 3 | name3| PQ-965099 | pending | .....|
我所做的是:
recent_quote_meta
id
、quote_id
、quote_type
、created_at
、updated_at
, deleted_at
recent_quote_meta
中,並使用 quote_id
quote_id
和quote_type
,基於此我正在相應地獲取和顯示報價但情況是,他們不希望我對資料庫進行任何更改。而且我認為這無法在當前的場景中完成。
有沒有辦法可以取得這些表格的最新報價?它可以是 regular_quotes
或 premium_quotes
#謝謝!
P粉9564410542023-09-07 15:52:41
如果沒有任何時間戳列,實際上無法確定兩個表中哪一個具有最新的報價條目。我們可以嘗試一些技巧,但您的情況將決定它們是否值得信任。
一種方法是,您可以檢查 ID 是否按順序分配,並且由於您知道兩個表中的最新 ID,因此您可以比較它們以確定哪個表具有最新報價。例如,如果regular_quotes
表中最新的id
為3
,並且regular_quotes
表中最新的id
# > premium_quotes表為5
,可以斷定premium_quotes
表中有最新的報價。
SELECT MAX(id) AS latest_regular_quotes_id FROM regular_quotes; SELECT MAX(id) AS latest_premium_quotes_id FROM premium_quotes;
這些將傳回每個表中的最高 ID 值。您可以比較這兩個值來確定哪個表具有最新報價,其中 id
的值最高。
理想情況下,您可能需要告訴管理員解決此問題。
希望這對您有用。