Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

cách lấy các đối tượng tương tự dựa trên thẻ

Thao tác này sẽ trả về danh sách tất cả các phim chia sẻ ít nhất 1 thẻ với <current_movie_id> đã cho sắp xếp theo thứ tự giảm số lượng thẻ chung

SELECT movie.*, count(DISTINCT similar.tag) as shared_tags FROM movie INNER JOIN 
    ( tagged AS this_movie INNER JOIN tagged AS similar USING (tag) )
    ON similar.movie = movie.id
WHERE this_movie.movie=<current_movie_id>
AND   movie.id != this_movie.movie
GROUP BY movie.id
ORDER BY shared_tags DESC

hy vọng điều đó mang lại cho bạn điều gì đó để làm việc với




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn SQL trả về false trong PHP

  2. Đây có phải là một lược đồ DB tốt cho các vị trí không

  3. Bảng dữ liệu tổng hợp

  4. Hộp kiểm biểu mẫu PHP và chỉ mục không xác định

  5. ký tự đại diện mysql (bỏ qua một / hai ký tự trong tìm kiếm)