|
В MSSQLServer есть оператор EXISTS, а в MySQL?
|
|||
---|---|---|---|
#18+
День добрый! В MS SQL я пишу SELECT * FROM t1 WHERE EXISTS(SELECT * FROM t2 WHERE t1.f1=t2.f1) и отбираются все строки главной таблицы, для которых есть хотя бы одна строка в подчиненной. Это реализуется одним SELECT'ом в MySQL? Наугад не получается, а в документации не нашел. Неужели облом??? :( С интересом, Евгений. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2003, 18:25 |
|
В MSSQLServer есть оператор EXISTS, а в MySQL?
|
|||
---|---|---|---|
#18+
в 3.23.XX - облом. Ибо глуп и неразвит MySQL. Про 4.X - не знаю, но, вроде, тоже нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2003, 18:29 |
|
В MSSQLServer есть оператор EXISTS, а в MySQL?
|
|||
---|---|---|---|
#18+
это вложенный запрос и mysql 3.x такие не делает. Если немного подумать, то такой запрос с EXISTS легко преобразуется в inner join ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2003, 11:41 |
|
В MSSQLServer есть оператор EXISTS, а в MySQL?
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2003, 13:02 |
|
В MSSQLServer есть оператор EXISTS, а в MySQL?
|
|||
---|---|---|---|
#18+
select t1.* from t1, t2 where t1.f1=t2.f1 Я извиняюсь, но этот запрос должен вывести каждую строку из t1 столько раз, сколько для нее соответствующих строк в t2. А вот если сделать (в MSSQL) select DISTINCT(t1.*) from t1, t2 where t1.f1=t2.f1 то работает, как надо! А дистинкт в MySQL есть, так что спасибо, что подтолкнули в нужном направлении. однако fedd неправ :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2003, 15:15 |
|
|
start [/forum/topic.php?fid=47&fpage=705&tid=1855922]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 262ms |
total: | 397ms |
0 / 0 |