gpt4 book ai didi

php - 如何让sqlite查询在mysql上工作?

转载 作者:行者123 更新时间:2023-11-29 15:50:25 27 4
gpt4 key购买 nike

我有sqlite查询我想让它在 mysql 数据库上运行我使用了 MATCH AND AGAINST 但如果您看到这部分则没有帮助

'TEST:^hello ' 

我怎样才能做到这一点?谢谢

SELECT * FROM table_a MATCH 'TEST:^hello ' AND test2 = 'hello' 

我现在在 MySql 查询中使用 MATCH , AGAINST ,我想找到所有以“hello”开头的单词(您会看到 hello 之后的空格!)那么我该如何使用带有 MATCH AND AGAINST 的全文搜索来做到这一点?

words
hello
hello how are you
you are good hello
hello ?
nice hello fine

I want this
hello
hello ?
hello how are you
nice hello fine
you are good hello

最佳答案

I using MATCH , AGAINST now in my MySql query and I want to find all the words who start with "hello " (you seeing the space after hello!) so how can I do that using FULLTEXT search with MATCH AND AGAINST?

由于 MySQL 中的 MATCH() AGAINST() 不支持 REGEX,所以我很可能会选择。

SELECT 
*
FROM (

SELECT
*
FROM
test
WHERE
MATCH(word) AGAINST('+hello ')
) AS fulltext_scan
WHERE
fulltext_scan.word REGEXP '^hello '

或者

SELECT 
*
FROM (

SELECT
*
FROM
test
WHERE
MATCH(word) AGAINST('+hello ')

) AS fulltext_scan
WHERE
fulltext_scan.word LIKE 'hello %'

内部 sql(交付表)的工作方式基于 MATCH(word) AGAINST('+hello ') 限制结果,并且可以使用 FULLTEXT index以加快速度。
外部 SQL 使用 REGEX 或 LIKE 过滤结果集,以仅匹配以 hello 开头的内容。

关于php - 如何让sqlite查询在mysql上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56793035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com