私はCanariフレームワークを使用して、Malteog内で一連の変換を作成してMySQLデータベースをスキャンし、結果をエンティティとして返します。SQLのフィールドでpython変数が含まれているかどうかを調べる
私は、SQLステートメント内のLIKE演算子を操作する全体を持っています。コードは次のとおりです。
#===========================================================================
# Request and set target from graph
target = (request.entity.value)
#===========================================================================
# Extract message column and check against target entity
statement = (
"SELECT * FROM tableT.TTO WHERE Text LIKE %(tq)s"
)
cursor.execute(statement, { 'tq': target })
results = cursor.fetchall()
#===========================================================================
# Create response entities based on SQL output
for r in results:
e = getTTO(target)
e.From = r[0]
e.Text = r[1]
e.date = r[2]
e.iconurl = 'http://local.paterva.com/phrase.png'
response += e
これは機能しますが、正確な一致が返されます。 TEXT列をチェックして、エントリに変数 "target"の記述が含まれているかどうかを確認する必要があります。私は一日のうちにpython変数を渡すのに一番の時間を費やしましたが、完全一致以外のものを返すことはできません。
あなたはおそらく、[全文検索]を探しています(http://dev.mysql.com/doc/refman/5.7/en/fulltext- natural-language.html)。 – syntonym