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

Pilih bagian dari MySQL Blob Field

Kueri ini:

SELECT 
  CONCAT(
    '...', 
    SUBSTR(`description`, 
      LOCATE('Nam rhoncus', `description`) - 10, 
      (LENGTH('Nam rhoncus') + 20)), 
    '...') AS `description`
FROM table 
WHERE `description` LIKE '%Nam rhoncus%';

(Saya membaginya seperti ini agar lebih mudah dibaca)

ini akan menampilkan:

...m auctor. Nam rhoncus, purus eg...

Jadi di PHP Anda dapat melakukan:

<?php
define('CHAR_LEFT', 10);
define('CHAR_RIGHT', 10);
// db stuff
$search = mysql_real_escape_string($search_var);
$query = "SELECT CONCAT('...', SUBSTR(`description`, LOCATE('" . $search . "', `description`) - " . CHAR_LEFT . ", (LENGTH('" . $search . "') + " . (CHAR_LEFT + CHAR_RIGHT) . ")), '...') AS `description` FROM table WHERE `description` LIKE '%" . $search . "%';";
// then your request

CATATAN: Saya akan berhati-hati menggunakan kata-kata terbalik mysql, ini sebabnya saya menggunakan description sebagai gantinya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JDBC vs Layanan Web untuk Android

  2. Program Java dan masalah konektivitas mySQL:Tidak ditemukan driver yang sesuai

  3. Tetapkan SEKARANG () sebagai Nilai Default untuk tipe data datetime?

  4. Apakah memperkenalkan kunci asing ke MySQL mengurangi kinerja?

  5. Cara Migrasi dari Oracle ke Server MySQL / Percona