Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SELECT с умовой IF 
:(
    Опции темы
ShamanUA
Дата 16.7.2012, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 28.2.2010

Репутация: нет
Всего: нет



Помогите написать запрос.
Есть такой запрос

Код

$ sql = "SELECT content FROM calc_s WHERE type = '$ type', voltage = '$ voltage', SL =' $ sl ', V_min <=' $ m3 ', V_max> =' $ m3 '";


Надо переделать чтобы проверялись данные из поля voltage только когда совпадает поле type
Все нужно сделать одним запросом ...

большое спасибо за помощь smile

Это сообщение отредактировал(а) ShamanUA - 16.7.2012, 14:51
PM MAIL   Вверх
skyboy
Дата 16.7.2012, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 41
Всего: 260



шо за запятые? используй AND!
PM MAIL   Вверх
ShamanUA
Дата 16.7.2012, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 28.2.2010

Репутация: нет
Всего: нет



ок, спасибо
но меня интересует целый запрос
напишите пожалуйста если можете
PM MAIL   Вверх
skyboy
Дата 16.7.2012, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 41
Всего: 260



это не ответ на твой вопрос, потому что я твой вопрос не понял
это скорее общее замечание:
Код

SELECT content FROM calc_s WHERE type = '$ type' AND voltage = '$ voltage' AND SL =' $ sl ' AND V_min <=' $ m3 ' AND V_max> =' $ m3 '

PM MAIL   Вверх
ShamanUA
Дата 16.7.2012, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 28.2.2010

Репутация: нет
Всего: нет



Нужно чтобы когда type = '$ type' то равность voltage = '$ voltage "не первирялась, но все остальные равенства  проверялись. А когда type не равна $ type, то чтобы проверялась равенство voltage = '$ voltage ", и также все равенства остальние.
PM MAIL   Вверх
skyboy
Дата 17.7.2012, 00:01 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 41
Всего: 260



все варианты перечисли. пока что могу предложить использовать OR вместо AND. но это больше похоже на "угадай, что мне надо выбрать"
PM MAIL   Вверх
ShamanUA
Дата 17.7.2012, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 28.2.2010

Репутация: нет
Всего: нет



нужно запрос, который бы работал по такой логике:

if(type == '$ type')
{
Код

SELECT content FROM calc_s WHERE type = '$ type' AND SL =' $ sl ' AND V_min <=' $ m3 ' AND V_max> =' $ m3 ';

}
else
{
Код

SELECT content FROM calc_s WHERE type = '$ type' AND voltage = '$ voltage' AND SL =' $ sl ' AND V_min <=' $ m3 ' AND V_max> =' $ m3 ';

}

то есть если "type" не совпадает, то проверять равенство "voltage".
а если "type" совпадает, то не нужно проверять равенство "voltage".

Это сообщение отредактировал(а) ShamanUA - 17.7.2012, 01:52
PM MAIL   Вверх
Fortop
Дата 21.7.2012, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 4
Всего: 42



Ну так и объедени их через OR

Код

((первый вариант как нужно) OR (второй вариант как нужно)) AND (остальные условия)



--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0709 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.