0
我正在從事出版物管理應用程序。根據業務邏輯,如果出版物的文本具有等於或高於75%的相似度,則出版物可以屬於另一出版物。因此,在數據庫中,我在publications
表上創建了一個自我關係。是否有可能在Sequel中執行自我加入?
到目前爲止,我有以下查詢完美的作品:
SELECT
publications.id, publications.body,
similar_publications.id similar_id, similar_publications.body similar_body
FROM publications
LEFT JOIN publications similar_publications
ON similar_publications.id = publications.publication_id
WHERE publications.id = <an-id-here>;
的問題是,我想「轉換」這個查詢到續集的DSL,以簡單地叫我的模型在某種程度上像所以:Publication.including_similar_publications.where('publications.id = ?', 1)
我知道我需要在我的模型中創建這個方法。我的疑問是:如何?在續集中是否有類似ActiveRecord
的命名示波器?另一個問題是,因爲我的查詢是SELF JOIN
,我需要在LEFT JOIN
上使用別名... Sequel是否允許我以我在查詢中公開的方式使用別名?如果是,如何?