tôi có ba bảng trong cơ sở dữ liệu của tôi đó là:PHP tìm kiếm mysql nhiều bảng bằng cách sử dụng từ khóa
messages
topics
comments
Mỗi bảng có hai lĩnh vực được gọi là 'nội dung' và 'tiêu đề'. Tôi muốn có thể sử dụng 'Like' trong câu lệnh sql của tôi để xem 'messages.content', 'messages.title', 'topics.content', 'topics.title', 'comments.content' và 'comments. tiêu đề 'bằng cách sử dụng một từ khóa.
Cho đến nay, câu hỏi của tôi là có thể tìm thấy kết quả chỉ từ một bảng:
mysql_query("SELECT * FROM messages
WHERE content LIKE '%" . $keyword . "%'
OR title LIKE '%" . $keyword ."%'");
Tôi cũng tự hỏi, một lần tôi nhận được kết quả từ nhiều bảng, làm thế nào tôi có thể nói những gì kết quả là từ những gì bảng ?
Bất kỳ trợ giúp nào sẽ được đánh giá rất nhiều!
Có lý do nào khiến bạn không chỉ thực hiện 3 truy vấn khác nhau không? Các cột có thể không giống nhau trên tất cả các cột. – evan
Tìm kiếm văn bản đầy đủ (FTS) là phương pháp được khuyến nghị - [MySQL có cú pháp riêng, nhưng nó chỉ dành cho MyISAM] (http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html). Nếu không, bạn phải tìm đến sự hỗ trợ của bên thứ 3, như Sphinx. –