簡體   English   中英

將條件視為原始條件

[英]Sequelize where condition as raw

我定義了一個模型。 我想在該模型的postgres中進行高級選擇查詢。

原始查詢如下所示:

SELECT
    6371 * acos(
        cos(
            radians("+CustomerLat+")
        ) * cos(radians(sto.lat)) * cos(
            radians(sto.lng) - radians("+CustomerLng+")
        ) + sin(
            radians("+CustomerLat+")
        ) * sin(radians(sto.lat))
    ) AS distance
FROM
    stores sto
ORDER BY
    distance ASC
LIMIT 1

我可以直接在模型上進行續集嗎?

Stores
.findAll()
.then(function(res){ //****// })

這個問題很古老,但是,我有兩點建議...首先,為什么不使用PostGIS postgresql擴展,它在GIS數據方面是一流而又快速的。 其次..不! 您不能這樣做...但是對於高級where子句條件,我建議將其與Knex.js原始查詢構建器混合使用。 您可以使用Knex.js來構建where子句 ,並將其與PostGIS混合使用以獲得最佳結果。

暫無
暫無

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

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