SELECT 
  c.parent_id, 
  sm.search_phrases, 
  c.category_id 
FROM 
  cscart_categories AS c 
  LEFT JOIN cscart_ab__search_motivation AS sm ON sm.category_id = c.category_id 
  AND sm.lang_code = 'ru' 
WHERE 
  c.id_path LIKE "%291%" 
  AND (
    sm.search_phrases != "NULL" 
    OR c.level = (
      SELECT 
        level 
      FROM 
        cscart_categories 
      WHERE 
        category_id = 291
    )
  ) 
  AND c.company_id = 1 
  AND c.status = "A"

Query time 0.00078

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "c",
      "access_type": "ALL",
      "rows": 217,
      "filtered": 100,
      "attached_condition": "c.company_id = 1 and c.id_path like '%291%' and c.`status` = 'A'"
    },
    "table": {
      "table_name": "sm",
      "access_type": "ref",
      "possible_keys": ["PRIMARY"],
      "key": "PRIMARY",
      "key_length": "3",
      "used_key_parts": ["category_id"],
      "ref": ["noframes_angrybeaver.c.category_id"],
      "rows": 1,
      "filtered": 100,
      "attached_condition": "trigcond(sm.search_phrases <> 'NULL' or c.`level` = (subquery#2)) and trigcond(sm.lang_code = 'ru')"
    },
    "subqueries": [
      {
        "query_block": {
          "select_id": 2,
          "table": {
            "table_name": "cscart_categories",
            "access_type": "const",
            "possible_keys": ["PRIMARY", "p_category_id"],
            "key": "PRIMARY",
            "key_length": "3",
            "used_key_parts": ["category_id"],
            "ref": ["const"],
            "rows": 1,
            "filtered": 100
          }
        }
      }
    ]
  }
}

Result

parent_id search_phrases category_id
280 291
291 313
291 1618
291 1644
291 1645
291 1647
291 1650
291 1652
291 1654
291 1655
291 1660
291 1662
291 1663
291 1671
291 1672
291 1679
291 1680
291 1682
291 1683
291 1684