Hacker News new | ask | show | jobs
by winslett 1032 days ago
You can do this with a lateral join.

SELECT * FROM A, LATERAL (SELECT * FROM B ORDER BY a.embedding <-> b.embedding LIMIT 2) AS closest_in_b ORDER BY A.id;

It’s going to have so-so performance. So, don’t hose your production server. Create a vector index on b.embedding. HNSW will be nice for this use case.

1 comments

Thanks! I've implemented this manually with HNSW and I was wondering if pgvector would be an easy replacement.