Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara mendapatkan frekuensi kata berturut-turut menggunakan mysql fulltext

Buat fungsi yang ditentukan pengguna seperti ini

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 ;

Kemudian Anda dapat menggunakan ini dalam kueri Anda sebagai berikut

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

Semoga membantu




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. File batch untuk menghubungkan mysql dan menjalankan perintah

  2. Hirarki Banyak-ke-Banyak dengan Banyak Orang Tua - PHP, MySQL

  3. Menulis file PHP untuk dibaca dari CSV dan menjalankan SQL Query

  4. Bisakah Anda menambahkan pernyataan if di ORDER BY?

  5. Dapatkan hasil kueri hitung dengan mengabaikan pernyataan LIMIT