![]() |
|
Модераторы: LSD |
![]()
|
|
| Alone |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 11.5.2003 Где: Dnepropetrovsk, U A Репутация: нет Всего: 6 |
Доброго дня.
Помогите построить запрос: есть
нужно выбрать из обоих таблиц (param, value) по множественному условию: param = x1 & value = y1 param = x2 & value = y2 ... Это сообщение отредактировал(а) Alone - 14.11.2005, 12:26 -------------------- |
|||
|
||||
| Darhazer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: нет Всего: 29 |
-------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
|||
|
||||
| Alone |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 11.5.2003 Где: Dnepropetrovsk, U A Репутация: нет Всего: 6 |
да нет... если бы так все было просто - я не писал бы сюда.
надо чтоб условие проверялось на пары: ref_tbl.param = x1 AND ref_param_id.value=y1 и таких условий может быть много. и проверка не по ОР а по ЭНД. в этом то и сложность... Хотел уйти от вложенных подзапросов, да видимо не получится... -------------------- |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Alone
а тебе чего написАли? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Darhazer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: нет Всего: 29 |
У ref_tbl.param можеть быт только одно значение, оно не может быт или х1 или х2, не может быт х1 и х2
Поэтому проверка по OR Пожалуйства, поясните цель, дайте пример, обясните значение id и ref_param_id - какая связь между таблици и т.д. Вообще, напишите примерное содержание двух таблици и что должно получиться -------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
|||
|
||||
| Alone |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 11.5.2003 Где: Dnepropetrovsk, U A Репутация: нет Всего: 6 |
да нет... если бы так все было просто - я не писал бы сюда.
надо чтоб условие проверялось на пары: ref_tbl.param = x1 AND ref_param_id.value=y1 и таких условий может быть много. и проверка не по ОР а по ЭНД. в этом то и сложность... Хотел уйти от вложенных подзапросов, да видимо не получится... -------------------- |
|||
|
||||
| bas |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: нет Всего: 2 |
|
||||
|
|||||
| Darhazer |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: нет Всего: 29 |
Тогда выберет и если param = x2 & value = y1 Alone, зачем пишете два раза одно и тоже. Дайте примерную таблицу и примерний результат... и мы напишем вам запрос ;) -------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
||||||
|
|||||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Почему бы пары параметров не запихнуть во временную таблицу и не сделать после выборку с inner join по нужным полям? ей-бо, быстрее будет... особенно если этих пар много...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Alone |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 11.5.2003 Где: Dnepropetrovsk, U A Репутация: нет Всего: 6 |
повторное сообщение - глюк сети/форума
Уточняю ситуацию: таблица ref_tbl (вернее ref_tbl_xxxx) может содержать примерно такие записи: 1 number 2 name 3 link таблица tbl (вернее tbl_xxxx) может содержать примерно такие записи: 1 12345 15 2 pupkin 15 3 yes 15 Из этого содержимого можно вывести следующее: number=12345 name=pupkin link=yes out_id=15 Так вот, мне надо например, выбрать tbl.out_id, где (number=12345 и name=pupkin) Так, надеюсь понятней? -------------------- |
|||
|
||||
| boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Не совсем понятно.
На первый взгляд выглядит как простой INNER JOIN между ref_tbl_xxxx и tbl_xxxx. Какую роль играет out_id во всей этой сказке?
Этот sql вернет то что просил. -------------------- Никогда не говори никогда |
|||
|
||||
![]()
|
| Правила форума "Общие вопросы по базам данных" | |
|
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |