Не могу получить данные, используя LIKE с INNER JOIN

Обновление этого для чего-то более простого для регистратора (работает как для python 2, так и для 3). Вам не нужен модуль трассировки.

import logging

logger = logging.Logger('catch_all')

def catchEverythingInLog():
    try:
        ... do something ...
    except Exception as e:
        logger.error(e, exc_info=True)
        ... exception handling ...

Теперь это старый способ (хотя все еще работает):

import sys, traceback

def catchEverything():
    try:
        ... some operation(s) ...
    except:
        exc_type, exc_value, exc_traceback = sys.exc_info()
        ... exception handling ...

exc_value - это сообщение об ошибке.

0
задан Mark Gerryl Mirandilla 18 January 2019 в 10:53
поделиться

2 ответа

Может быть, глупый вопрос. Но если вы используете предложение WHERE с LIKE, тогда поле Ключевое слово МОЖЕТ содержать только это ключевое слово во всем поле. Однако при вашем присоединении вы присоединяетесь как точное совпадение для того же поля.

Что я имею в виду, если у вас есть 2 поля ключевых слов, которые содержат комментарии, например, тогда почему они объединяются для точного соответствия? Если вы удалите предложение where, то вернете ли вы какие-либо результаты?

0
ответ дан Dev 18 January 2019 в 10:53
поделиться

Название столбца keyword является неоднозначным, поскольку оно появляется в обеих таблицах

Try:

SELECT * 
FROM history_search 
INNER JOIN history_subs 
    ON history_search.keyword = history_subs.keyword 
WHERE history_search.keyword LIKE '%$keyword%' -- Added a table reference here
0
ответ дан JohnHC 18 January 2019 в 10:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: