Tôi có chuỗi trong mysql db như dưới đây
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
"Three Mayer Brown Goodies & Securities"
Tôi cần tìm từ chính xác không giống như từ khóa
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
8. Đây là ví dụ,Tôi cần chọn hàng với từ khóa
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
9. Đây sẽ là chọn 3 hàng đầu tiên. Cái cuối cùng có những từ bổ sung như SELECT * FROM table WHERE myword LIKE '% Good %' OR myword LIKE 'Good%' OR myword LIKE '% Good'
0 ở đây là kết quả dự kiến của tôi "Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
Tôi đã thử truy vấn dưới đây.
SELECT * FROM table WHERE myword LIKE '% Good %' OR myword LIKE 'Good%' OR myword LIKE '% Good'
Nhưng điều này không làm việc cho tôi.
hỏi ngày 19 tháng 3 năm 2015 lúc 10:39Mar 19, 2015 at 10:39
0
SELECT * FROM table WHERE myword REGEXP '^.*GOOD.*$
Bạn có thể sử dụng
SELECT * FROM table WHERE myword LIKE '% Good %' OR myword LIKE 'Good%' OR myword LIKE '% Good'
1 để làm điều này. HoặcSELECT * FROM table WHERE myword REGEXP '[[::]]'
Sử dụng với ________ 22.See Demo. //www.sqlfiddle.com/#!9/e1b9d/6/0
Đã trả lời ngày 19 tháng 3 năm 2015 lúc 10:41Mar 19, 2015 at 10:41
vksvksvks
66K10 Huy hiệu vàng89 Huy hiệu bạc122 Huy hiệu Đồng10 gold badges89 silver badges122 bronze badges
1
Tại sao không sử dụng tìm kiếm văn bản đầy đủ, điều này có nghĩa là cho loại tìm kiếm này theo cách được tối ưu hóa với hàng tấn tính năng, thay vì làm như thẻ hoang dã chậm và ngay cả với cột được lập chỉ mục sử dụng
SELECT * FROM table WHERE myword LIKE '% Good %' OR myword LIKE 'Good%' OR myword LIKE '% Good'
3 không ảnh hưởng đến chỉ mục. Nếu bạn không biết làm thế nào để làm điều đó xem hướng dẫn sử dụng. Và đây là một ví dụ mẫu cho bạnFull Text Search, which is meant for this kind of search in an optimized way with tons of features, instead of doing like wild card which is slow and even with indexed column using SELECT * FROM table WHERE myword LIKE '% Good %' OR myword LIKE 'Good%' OR myword LIKE '% Good'
3 makes no effect of index. If you
do not know how to do it see the manual. And here is a sample example for youmysql> create table test [search varchar[200],fulltext key[search]] engine=myisam;
Query OK, 0 rows affected [0.08 sec]
mysql> insert into test values ['Good Mayer Brown Corporate & Securities'],['Three Mayer Brown Good & Securities'],['Three Mayer Brown Corporate & Good'],['Three Mayer Brown Goodies & Securities'];
Query OK, 4 rows affected [0.02 sec]
Records: 4 Duplicates: 0 Warnings: 0
mysql> select * from test where match[search] against ['good' in boolean mode];
+-----------------------------------------+
| search |
+-----------------------------------------+
| Good Mayer Brown Corporate & Securities |
| Three Mayer Brown Good & Securities |
| Three Mayer Brown Corporate & Good |
+-----------------------------------------+
3 rows in set [0.00 sec]
Đã trả lời ngày 19 tháng 3 năm 2015 lúc 10:47Mar 19, 2015 at 10:47
Grep trong mysql là gì?
Tìm kiếm tìm kiếm tài nguyên tài nguyên phổ biến [CRGREP] cho tên bảng/cột và các khớp dữ liệu và hỗ trợ MySQL.
Syntax:
LOCATE[substr,str]
LOCATE [search str, str, [position]]
Tranh luận
Tìm kiếm str | Một chuỗi sẽ được tìm kiếm. |
str | Một chuỗi sẽ được tìm kiếm. |
Chức vụ | Vị trí từ nơi [trong đối số thứ hai], việc tìm kiếm sẽ bắt đầu. |
Sơ đồ cú pháp:
Phiên bản MySQL: 5.6
Trình chiếu video:
Trình duyệt của bạn không hỗ trợ video HTML5.
Trình bày bằng hình ảnh:
Ví dụ: Hàm MySQL định vị []
Câu lệnh MySQL sau đây trả về lần xuất hiện đầu tiên ‘ST, trong chuỗi‘ MyTestString. Vì phần phụ "ST" được tìm thấy ở vị trí thứ năm, chức năng trả về 5.
Code:
SELECT LOCATE['st','myteststring'];
Đầu ra mẫu:
mysql> SELECT LOCATE['st','myteststring']; +-----------------------------+ | LOCATE['st','myteststring'] | +-----------------------------+ | 5 | +-----------------------------+ 1 row in set [0.02 sec]
Ví dụ: Hàm MySQL định vị [] với vị trí bắt đầu
Câu lệnh sau đây trả về lần xuất hiện đầu tiên ‘ST, trong chuỗi‘ MyTestString, và việc tìm kiếm sẽ bắt đầu từ vị trí thứ 6 của chuỗi. Hàm trả về 7, vì ST phụ được tìm thấy ở vị trí thứ bảy.
Code:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
0Đầu ra mẫu:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
1Ví dụ: Hàm MySQL định vị [] với vị trí bắt đầu
Câu lệnh sau đây trả về lần xuất hiện đầu tiên ‘ST, trong chuỗi‘ MyTestString, và việc tìm kiếm sẽ bắt đầu từ vị trí thứ 6 của chuỗi. Hàm trả về 7, vì ST phụ được tìm thấy ở vị trí thứ bảy.
Code:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
2Ví dụ: Hàm MySQL định vị [] bằng cách sử dụng bảng
Đầu ra mẫu:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
3Ví dụ: Hàm MySQL định vị [] với vị trí bắt đầu
Câu lệnh sau đây trả về lần xuất hiện đầu tiên ‘ST, trong chuỗi‘ MyTestString, và việc tìm kiếm sẽ bắt đầu từ vị trí thứ 6 của chuỗi. Hàm trả về 7, vì ST phụ được tìm thấy ở vị trí thứ bảy.
Ví dụ: Hàm MySQL định vị [] bằng cách sử dụng bảng
Code:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
4Ví dụ: Hàm MySQL định vị [] bằng cách sử dụng bảng
Đầu ra mẫu:
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
5Ví dụ: Hàm MySQL định vị [] với vị trí bắt đầu
"Good Mayer Brown Corporate & Securities"
"Three Mayer Brown Good & Securities"
"Three Mayer Brown Corporate & Good"
6Câu lệnh sau đây trả về lần xuất hiện đầu tiên ‘ST, trong chuỗi‘ MyTestString, và việc tìm kiếm sẽ bắt đầu từ vị trí thứ 6 của chuỗi. Hàm trả về 7, vì ST phụ được tìm thấy ở vị trí thứ bảy.
Ví dụ: Hàm MySQL định vị [] bằng cách sử dụng bảng
Câu lệnh MySQL sau đây trả về các hàng đó từ bảng Nhà xuất bản nơi chuỗi tìm kiếm ‘AT AT tồn tại ít nhất một lần trong cột pub_name.Bảng mẫu: Nhà xuất bản
Xem ví dụ
Ví dụ: Hàm MySQL định vị [] với mệnh đề WHERE LOAD_FILE
Next:
LOWER