2016-01-25 1 views
0

У меня есть таблица strcture так:Получить согласованное значение столбца в MySQL Query

----------------------------------------------------------------------- 
    ID | Scifi Name  |  Hospital Code  |  Layman Language | 
    1 | Hysoc   |  CBC     | torems 
    2 | Loreim   |  HCI     | Loreims 
    ----------------------------------------------------------------------- 

Я пытаюсь значением совпадает, а запрос, как это:

"SELECT * FROM wp_vhh4zdnv0r_disease WHERE scifi_name like '%".$_GET['term']."%' OR hospital_code like '%".$_GET['term']."%' OR layman_language like '%".$_GET['term']."%'"; 

запрос отлично работает, но я пытаюсь чтобы получить это поле, которое соответствует значениям. Например, если term ='cbc' и cbc существуют в Hospital code, он возвращает только код больницы? Как я должен достичь this.May быть PHP-код может помочь, но я понятия не имею, как получить, что благодаря

+0

поставить некоторые фиктивные данные, чтобы мы могли проверить OT сделать sqlfiddle –

+0

@PathikVejani проверить теперь поиск question.the запрос может быть значения имеют CBC или Lorem т.д. –

ответ

0

вы можете использовать case заявление так:

$sql= "SELECT CASE WHEN scifi_name like '%".$_GET['term']."%' THEN scifi_name 
WHEN phospital_code like '%".$_GET['term']."%' THEN phospital_code 
WHEN layman_language like '%".$_GET['term']."%' THEN layman_language 
END FROM wp_vhh4zdnv0r_disease"; 
+0

спасибо, но я получаю 0 результат –

+0

так что ваши условие не учитывает –

0

Вы можете использовать UNION. Также не забывайте избегать ввода пользователя с помощью mysqli_real_escape_string() или аналогичной функции.

SELECT scifi_name FROM wp_vhh4zdnv0r_disease WHERE scifi_name like '%".$_GET['term']."%' UNION SELECT hospital_code FROM wp_vhh4zdnv0r_disease WHERE hospital_code like '%".$_GET['term']."%' UNION SELECT layman_language FROM wp_vhh4zdnv0r_disease WHERE layman_language like '%".$_GET['term']."%'" 

 Смежные вопросы

  • Нет связанных вопросов^_^