Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];

Вниз

Интересный на мой взгляд запрос   Найти похожие ветки 

 
Ser1982   (2003-12-22 13:25) [0]

Таблица:
ид
поле1
поле2
поле3

Нужно найти такие поле3, в которых поле2 совпадают, а поле1 равно каждому из заданных значений. Пример:
Таблица:

ид поле1 поле2 поле3
0 1 2 1
1 2 2 1
2 3 2 2
3 2 1 2
4 1 3 3
5 5 2 1
6 5 3 2

Заданы значения: Вернуть:
1,5 1,2
1,2,5 1
2,3,5 2
2,5 1,2
3 2

Обратите внимание на то что база MySQL


 
JibSkeart   (2003-12-22 13:28) [1]

а поле 2 с кем должно совпадать ?


 
Sandman25   (2003-12-22 13:41) [2]

select A1.n3
from table A1,
table A2,
table A3
where A1.n1=? //1
and A2.n1=? //2
and A3.n1=? //5
and A2.n2=A1.n2
and A3.n2=A1.n2
union
select A2.n3
from table A1,
table A2,
table A3
where A1.n1=? //1
and A2.n1=? //2
and A3.n1=? //5
and A2.n2=A1.n2
and A3.n2=A1.n2
union
select A3.n3
from table A1,
table A2,
table A3
where A1.n1=? //1
and A2.n1=? //2
and A3.n1=? //5
and A2.n2=A1.n2
and A3.n2=A1.n2

Но что-то у меня большие сомнения в оптимальности спроектированной структуры БД...


 
SergP   (2003-12-22 18:41) [3]

Проблема в том что MySQL не поддерживает вложенные запросы.
Но по идее можно это сделать используя временную таблицу...


 
Sandman25   (2003-12-22 18:46) [4]

[3] SergP © (22.12.03 18:41)

Вы о [2]? Здесь нет вложенных запросов.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
1-63138
Cardinal
2004-01-02 20:50
2004.01.20
Консоль и ее


11-63045
=Sniper=
2003-05-04 12:32
2004.01.20
Editbox и Combobox


3-62991
3APA3A
2003-12-23 17:04
2004.01.20
Сравнение дат в SQL


1-63131
Lion
2004-01-07 21:23
2004.01.20
Dll и QuickRep


3-63028
SergP
2003-12-22 03:44
2004.01.20
Можно ли менять поля в TADOQuery? И что при этом произойдет?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский