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

cách thực hiện tìm kiếm lượt like trong postgresql và node js

Tôi không biết rõ về giao diện node.js PostgreSQL nhưng tôi nghĩ tôi có thể thấy vấn đề. Đây là một chuỗi SQL có chứa một trình giữ chỗ được đánh số:

'%$1%'

$1 bên trong chuỗi đó sẽ không được thay thế bằng giá trị của thẻ tag bởi vì trình giữ chỗ bên trong chuỗi hoàn toàn không phải là trình giữ chỗ, chúng chỉ là những chuỗi con có cùng dạng với trình giữ chỗ.

Hai tùy chọn thông thường là:

  1. Thêm % ký tự đại diện trong mã khách hàng.
  2. Nối % ký tự đại diện vào các chuỗi bên trong cơ sở dữ liệu.

Cái đầu tiên sẽ trông như thế này:

db.client.query("SELECT * FROM tags WHERE name LIKE $1", ['%' + tag + '%'], ...

và thứ hai như thế này:

db.client.query("SELECT * FROM tags WHERE name LIKE '%' || $1 || '%'", [tag], ...

Sử dụng bất kỳ cách tiếp cận nào bạn thí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. Cách khởi tạo cơ sở dữ liệu PostgreSQL mà không cần chạy máy chủ PostgreSQL

  2. Làm cách nào tôi có thể tạo ràng buộc để kiểm tra xem email có hợp lệ trong postgres hay không?

  3. Rake db:thả không xóa các bảng cũ của tôi

  4. Cách hoạt động của hàm timezone () trong PostgreSQL

  5. Các bài kiểm tra PostgreSQL được nhúng cho Java JUnit