[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: условие and с 1 поля
karakas
Добрый день, необходимо вывести данные с 1 поля,где 2 значения из поля 2 совпадают,т.е.
select поле1 from таблица where поле2='условие' and поле2='другое условие'
Почему-то результат нулевой,хотя если искать без and ,a по отдельности ,то ищет нормально. sql немого подзабыл, собственно вопрос можно ли так делать или надо по отдельности искать?



Спустя 10 минут, 2 секунды (25.04.2011 - 13:57) linker написал(а):
Здесь OR тебе в помощь.

Спустя 3 минуты, 51 секунда (25.04.2011 - 14:01) T1grOK написал(а):
Ну конечно. Порассуждайте логически как будет воспринят данный запрос(например):

select поле1 from таблица where поле2='1' and поле2='2'

Выбрать поле1 из таблица где поле2 равен 1 и поле2 равен 2. То есть удобвлетворяющих условию строк просто не может быть.
Используйте например IN:

select поле1 from таблица where поле2 IN('условие', 'другое условие')

Спустя 7 минут, 36 секунд (25.04.2011 - 14:08) Игорь_Vasinsky написал(а):
может так:

SELECT `поле1`, `поле2` FROM `table` WHERE `поле2` = 'условие' OR `поле2` = 'другое условие';

Спустя 27 минут, 53 секунды (25.04.2011 - 14:36) karakas написал(а):
Вообщем делаю что-то типо путеводителя чтобы можно было указав начальную и конечную остановку узнать номер маршрута который там ходит. Чтобы избавится от отношения М:М пришлось сделать таблицу:
номер маршрута остановка
.....
10 Парк Победы
10 к/т Победа
.......
И хотел просто через поиск искать подходящий маршрут.(т.е. если бы указав начальную остановку как Парк Победы и конечную как к/т Победа выдавало бы 10 маршрут).К сожалению OR и IN тут не пойдет,т.к. возвращать будет даже при 1 совспадении sad.gif
Ну все равно спасибо за ответы, понял что легкий вариант(ч/з and) не пройдет.

Спустя 7 минут, 26 секунд (25.04.2011 - 14:44) alex12060 написал(а):
SELECT DISTINCT `march` FROM `buses` WHERE `bus_march` LIKE %Парк Победы% AND %к/т Победа%

Спустя 28 минут, 7 секунд (25.04.2011 - 15:12) Игорь_Vasinsky написал(а):
Ну для путеводителя, я бы перечислял ещё все остановки и таблу бы делал такую:

table 1

id | numberBus | start | end
1 | 221 | Начальная | конечная

table 2

id | middle
1 | перечислил все остановки маршрута, можно по порядку, можно нет.


Вот такой вот путиводитель.

Спустя 1 минута, 15 секунд (25.04.2011 - 15:13) Игорь_Vasinsky написал(а):
и автозаполнение для удобства wink.gif

Спустя 7 минут, 17 секунд (25.04.2011 - 15:20) karakas написал(а):
SELECT `busname` FROM `ways` WHERE STOP LIKE 'ул.Сталинграда%' AND busname = ( SELECT `busname` FROM `ways` WHERE STOP LIKE 'пляж Омега%' )

Всем спасибо за помощь

Спустя 2 минуты, 16 секунд (25.04.2011 - 15:23) Игорь_Vasinsky написал(а):
Вложенный запрос используется для нескольких таблиц, для одной не проканает

и логика вообще не понятна, ты по остановкам ищешь или по маршрутам

Спустя 6 минут, 50 секунд (25.04.2011 - 15:29) karakas написал(а):
Ищу по остановкам маршруты..почему не проканает? ищет же)
сначала он выполнит
( SELECT `busname` FROM `ways` WHERE STOP LIKE 'пляж Омега%' )
Т.е. найдет 1 остановку и запомнит номер маршрута. Затем
SELECT `busname` FROM `ways` WHERE STOP LIKE 'ул.Сталинграда%' AND busname= то,что нашли
найдет 2 остановку и сравнит маршруты. Если они совпали значит это один маршрут и цель выполнена

Спустя 2 минуты, 36 секунд (25.04.2011 - 15:32) Игорь_Vasinsky написал(а):
А что это за путеводитель в котором чтоб узнать номер маршрута - нужно ввести и конечную и начальную остановки, я даж в своём городе быстреепешком дойду, чем угадаю wink.gif

Спустя 6 минут, 31 секунда (25.04.2011 - 15:38) karakas написал(а):
Почему же. Когда ты хочешь поехать куда-то ты же знаешь какая остановка ближе всего к тебе...и знаешь куда тебе нужно добраться smile.gif
Я имел ввиду не конечные и начальные остановки пути ,по которому транспорт ходит,а место, где пользователь сядет на транспорт и куда он хочет добраться. Извиняюсь, если не так выразился smile.gif

Спустя 2 минуты, 35 секунд (25.04.2011 - 15:41) Игорь_Vasinsky написал(а):
Всё... вкури. Тогда логика та wink.gif но про вложенный запрос уточни здесь

Спустя 24 минуты, 59 секунд (25.04.2011 - 16:06) sergeiss написал(а):
Цитата (Игорь_Vasinsky @ 25.04.2011 - 16:23)
Вложенный запрос используется для нескольких таблиц, для одной не проканает

Если честно говорить, то это абстрактное и даже более того - неверное утверждение.

karakas - получается так, что тебе нужно найти все номера маршрутов, проходящих через какие-то определенные остановки?

Спустя 33 минуты, 59 секунд (25.04.2011 - 16:40) karakas написал(а):
sergeiss,да,именно так.
Предыдущий запрос,который я писал работает только,если введен всего 1 маршрут :(
Чтобы работало со всеми маршрутами

SELECT `busname`FROM `ways`WHERE STOP LIKE 'ул. Очаковцев%'AND busname
IN (SELECT `busname`FROM `ways`WHERE STOP LIKE 'пл.Восставших%')

Спустя 3 часа, 38 минут, 47 секунд (25.04.2011 - 20:19) sergeiss написал(а):
Тебе уже советовали сделать по-другому структуру таблиц:
Цитата (Игорь_Vasinsky @ 25.04.2011 - 16:12)
Ну для путеводителя, я бы перечислял ещё все остановки и таблу бы делал такую:

table 1

id | numberBus | start | end
1 | 221 | Начальная | конечная

table 2

id | middle
1 | перечислил все остановки маршрута, можно по порядку, можно нет.

Подумай на досуге smile.gif Идея предложена правильная. Только во второй таблице надо еще будет добавить поле, по которому будет определяться порядок остановок на маршруте. Можно и по-другому сделать как-то, но в любом случае не в одной таблице.
Например, можно сделать отдельную табличку, в которой будет уникальный список остановок, а в других таблицах только связи между ними (порядок остановок в маршрутах).
При такой организаци

Спустя 43 минуты, 36 секунд (25.04.2011 - 21:02) Игорь_Vasinsky написал(а):
sergeiss
НУ от ва услышат такое ни как не расчитыал, раз 10 носом тыкали меня (многие) в нормальные формы, по ходу до тыкали... wink.gif сенкс
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.