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

Cách nhận tần suất của một từ trong một hàng bằng cách sử dụng mysql fulltext

Tạo một hàm do người dùng xác định như thế này

DELIMITER $$

CREATE FUNCTION `getCount`(myStr VARCHAR(1000), myword VARCHAR(100))
    RETURNS INT
    BEGIN
    DECLARE cnt INT DEFAULT 0;
    DECLARE result INT DEFAULT 1;

    WHILE (result > 0) DO
    SET result = INSTR(myStr, myword);
    IF(result > 0) THEN 
        SET cnt = cnt + 1;
        SET myStr = SUBSTRING(myStr, result + LENGTH(myword));
    END IF;
    END WHILE;
    RETURN cnt;    

    END$$

DELIMITER ;

Sau đó, bạn có thể sử dụng điều này trong truy vấn của mình như sau

select id, getCount(concat(FREETEXT, Third_col), 'test') from yourtable

Hy vọng nó sẽ hữu ích




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để đọc a, as <br /> trong PHP / MySQL?

  2. Không thể tải lên tệp hình ảnh CodeIgniter

  3. Làm thế nào để chọn với một trường nhị phân? (php, mysql)

  4. Laravel (5.3) Eloquent - Vấn đề về mối quan hệ

  5. chọn truy vấn ở chế độ ngủ đông với mệnh đề where