![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL-запрос... [MySQL]
D3m © (2005-01-17 05:39:00)Никак нимогу нормально объединить два 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 09:48:00) [1]Поодерживает ли сервер UNION можно на чем и попроще :)
SELECT 1 npp, * FROM phpbb_users
UNION
SELECT 2, * FROM phpbb_users
Ну и, естественно, колмчесто полей и их типы должны совпадать.
Наталия (2005-01-17 09:20:00) [2]Если не вчитываться в этот бредовый запрос, а лишь формально обратить внимание на union, то явно видно, что количество полей не совпадает, так что почитай документацию по union внимательно...
D3m (2005-01-17 08:58:00) [3]Fay это ты просто не понятливыЙ...
Мне нужно объяединить селекты выше стоящие командой UNION!
Однако при объединении вылазиет синтаксис еррор!..
Fay (2005-01-17 07:44:00) [4]2 D3m (17.01.05 5:39)
Задолбали! "объединить два SELECT'a" - это будет внешнее объединение? Или какое?
> Мне нужно вставить второй селект так что бы заработал
> хотя бы второй селект, а на первый наплевать :)
Что это за бред?! Куда нужно вставить второй селект? Какого диаметра должен быть второй, чтобы на первый можно было наплевать?
Чё ваще надо?
P.S.
Учитесь оформлять код и собственные мысли.
ЮЮ (2005-01-17 07:35:00) [5]>с чего это?... ведь без второго селекта, к. вставляю я, все работает!
А на результаты работы посмотри :)
Посмотри сколько записей возвращает
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?
D3m (2005-01-17 07:21:00) [6]с чего это?... ведь без второго селекта, к. вставляю я, все работает! Мне нужно вставить второй селект так что бы заработал хотя бы второй селект, а на первый наплевать :)
ЮЮ (2005-01-17 06:08:00) [7]>первый селект изменять нельзя, второй так что бы там хоть присутствовали поля имя и пароль
нельзя изменять первый - напиши третий, четвертый и т.д., пока не получмшб нужный ркзультат :)
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