2016-02-26 1 views
0

вопрос в том, что я хочу получить все поле из другой таблицы с внутренним соединением и где условие. Я попробовал этот запросМогу ли я использовать select * из таблицы с внутренним соединением и где условие в mysqli

$nowfire="select * 
       from reg_user r 
       inner join state s 
       on r.state=s.state_id 
       inner join country c 
       on r.country= c.country_id 
      where email_id='[email protected]'"; 

я знаю другой способ, как этот

$nowfire="select r.profile_id, r.email_id,s.state_name, c.city_name 
       from reg_user r 
       inner join state s 
       on r.state=s.state_id 
       inner join country c 
       on r.country= c.country_id 
      where email_id='[email protected]'"; 

это работает ... без проблем. но может я использовать как в выше Фрист * выберите * * .... формат ... это возможно в MySQLi .... пожалуйста, помогите Спасибо заранее за любую помощь .....

+0

Какие ошибки вы получили? – dieuhd

+0

Я не получаю ошибку ... я получил выход в формате json .. но я хочу уменьшить запрос ... – suresh

+0

Я думаю, что есть поле из трех таблиц с тем же именем. – dieuhd

ответ

0

вы можете попробовать:

$nowfire="select r.*,s.state_name, c.city_name 
       from reg_user r 
       inner join state s 
       on r.state=s.state_id 
       inner join country c 
       on r.country= c.country_id 
      where email_id='[email protected]'"; 
+0

извините, но это не работает ... пожалуйста, любое другое решение .. – suresh

+0

@suresh: Если вы хотите вывод в формате json, я думаю, вы можете выбрать все поле таблицы 'reg_user 'и некоторое поле других таблиц, которые не существуют в таблице' reg_user'. Я обновил свой ответ – dieuhd

+0

, но моя таблица reg_user содержит state_id, а состояние таблицы содержит state_name. Я хочу только имя из таблицы состояний, а не id из таблицы reg_user ..................... возможно ли это ... если я попробовал ваше решение, я получил итоговый результат: { "email_id": "[email protected]", "first_name": "abc", "state": "1 », "marital_status": "никогда не женился", "mother_tounge": "маратхи", "религия": "1", "state_name": "Махараштра", "religion_name": "Хинду", } но я хочу только одно поле. – suresh

0
$nowfire="select r.*,s.*, c.* 
       from reg_user r 
       inner join state s 
       on r.state=s.state_id 
       inner join country c 
       on r.country= c.country_id 
      where email_id='[email protected]'"; 
+0

Пожалуйста, объясните свой ответ. – roullie