Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.13;
Скачать: CL | DM;

Вниз

SQL-запрос...   Найти похожие ветки 

 
D3m   (2005-01-17 05:39) [0]

Никак нимогу нормально объединить два SELECT"a:
SELECT u.username AS username_1, u.user_id AS user_id_1, u2.username AS username_2,
u2.user_id AS user_id_2, u.user_sig_bbcode_uid, u.user_posts, u.user_from,
u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate,
u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_avatar, pm.*,
pmt.privmsgs_bbcode_uid, pmt.privmsgs_text FROM phpbb_privmsgs pm,
phpbb_privmsgs_text pmt, phpbb_users u, phpbb_users u2 WHERE pm.privmsgs_id = 99
AND pmt.privmsgs_text_id = pm.privmsgs_id AND pm.privmsgs_type=99

и SELECT username,
user_password FROM phpbb_users WHERE user_id=2

пробовал соответственно UNION, но интер. сообщает об синтаксис ошибке :(...
первый селект изменять нельзя, второй так что бы там хоть присутствовали поля имя и пароль... заранее спасибо


 
ЮЮ ©   (2005-01-17 06:08) [1]

>первый селект изменять нельзя, второй так что бы там хоть присутствовали поля имя и пароль

нельзя изменять первый - напиши третий, четвертый и т.д., пока не получмшб нужный ркзультат :)

SELECT
 u.username AS username_1, u.user_id AS user_id_1,
 u2.username AS username_2, u2.user_id AS user_id_2,
 u.user_sig_bbcode_uid, u.user_posts, u.user_from,
 u.user_website, u.user_email, u.user_icq, u.user_aim,  
 u.user_yim, u.user_regdate,
 u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig,
 u.user_avatar, pm.*,
 pmt.privmsgs_bbcode_uid, pmt.privmsgs_text
FROM
 phpbb_privmsgs pm,
 phpbb_privmsgs_text pmt,
 phpbb_users u,
 phpbb_users u2
WHERE
 pm.privmsgs_id = 99
 AND pmt.privmsgs_text_id = pm.privmsgs_id AND
 pm.privmsgs_type=99

В нормально записанном запросе сразу видно, что первый запрос нелья не менять, а НЕЛЬЗЯ ИСПОЛЬЗОВАТЬ, т.к. u2 и u НИКАК НЕ СВЯЗАНЫ c pm и pmt


 
D3m   (2005-01-17 07:21) [2]

с чего это?... ведь без второго селекта, к. вставляю я, все работает! Мне нужно вставить второй селект так что бы заработал хотя бы второй селект, а на первый наплевать :)


 
ЮЮ ©   (2005-01-17 07:35) [3]

>с чего это?... ведь без второго селекта, к. вставляю я, все работает!

А на результаты работы посмотри :)

Посмотри сколько записей возвращает

SELECT
Count(*)
FROM
phpbb_privmsgs pm,
phpbb_privmsgs_text pmt
WHERE
pm.privmsgs_id = 99
AND pmt.privmsgs_text_id = pm.privmsgs_id AND
pm.privmsgs_type=99

и сколько

SELECT
Count(*)
FROM
phpbb_privmsgs pm,
phpbb_privmsgs_text pmt,
phpbb_users u,
phpbb_users u2
WHERE
pm.privmsgs_id = 99
AND pmt.privmsgs_text_id = pm.privmsgs_id AND
pm.privmsgs_type=99

>Мне нужно вставить второй селект так что бы заработал хотя бы второй селект, а на первый наплевать

А что, собственно, тебе надо, чтобы у всех строк, возвращаемых первым запромом, появилось ещё одно поле, в еотором стоял бы пароль и имя одного и того же пользователя, у которого user_id=2?


 
Fay ©   (2005-01-17 07:44) [4]

2 D3m   (17.01.05 5:39)
Задолбали! "объединить два SELECT"a" - это будет внешнее объединение? Или какое?

> Мне нужно вставить второй селект так что бы заработал
> хотя бы второй селект, а на первый наплевать :)


Что это за бред?! Куда нужно вставить второй селект?  Какого диаметра должен быть второй, чтобы на первый можно было наплевать?

Чё ваще надо?

P.S.
Учитесь оформлять код и собственные мысли.


 
D3m   (2005-01-17 08:58) [5]

Fay это ты просто не понятливыЙ...
Мне нужно объяединить селекты выше стоящие командой UNION!
Однако при объединении вылазиет синтаксис еррор!..


 
Наталия ©   (2005-01-17 09:20) [6]

Если не вчитываться в этот бредовый запрос, а лишь формально обратить внимание на union, то явно видно, что количество полей не совпадает, так что почитай документацию по union внимательно...


 
ЮЮ ©   (2005-01-17 09:48) [7]

Поодерживает ли сервер UNION можно на чем и попроще :)

SELECT 1 npp, * FROM phpbb_users
UNION
SELECT 2, * FROM phpbb_users

Ну и, естественно, колмчесто полей и их типы должны совпадать.



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

Текущий архив: 2005.02.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
14-1106541324
rainy
2005-01-24 07:35
2005.02.13
кодировка в dos


9-1099913036
Robot
2004-11-08 14:23
2005.02.13
Война роботов


1-1107242319
Боян Георгиев
2005-02-01 10:18
2005.02.13
Алгоритм для создание порядок приоритетов


4-1103708142
lexis
2004-12-22 12:35
2005.02.13
Какому Process принадлежит ForegroundWindow?


14-1106593350
qwatrbek
2005-01-24 22:02
2005.02.13
Проверка защиты