[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Запрос из объединненой таблицы
vovan1409
Стала задача производить поиск запесей по двум полям из разных табл. в БД. Я склеил их:

(SELECT p1.peopleid, p1.ensurname, n1.enname, n2.ennick, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid=n2.peopleid and p1.nameid=n1.nameid)
UNION
(SELECT p1.peopleid, p1.ensurname, n1.enname, p1.ensurname, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid!=n2.peopleid and p1.nameid=n1.nameid)
ORDER BY ensurname, enname

Теперь мне нужно в получившейся объединненой табл.(см. вложенный файл) сделать выборку по столбцу "ennick" (ennick LIKE '$queryString%'). Помогите немогу написать)))
Oyeme

SELECT *
FROM (
(
SELECT p1.peopleid, p1.ensurname, n1.enname, n2.ennick, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid=n2.peopleid and p1.nameid=n1.nameid)
UNION
(SELECT p1.peopleid, p1.ensurname, n1.enname, p1.ensurname, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid!=n2.peopleid and p1.nameid=n1.nameid)
ORDER BY ensurname, enname
) as U
WHERE U.ennick LIKE '%test is here%'
vovan1409
Цитата (Oyeme @ 12.03.2013 - 03:41)
SELECT *
FROM (
(
SELECT p1.peopleid, p1.ensurname, n1.enname, n2.ennick, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid=n2.peopleid and p1.nameid=n1.nameid)
UNION
(SELECT p1.peopleid, p1.ensurname, n1.enname, p1.ensurname, p1.birthday
FROM people p1, name n1, pnick n2
WHERE p1.peopleid!=n2.peopleid and p1.nameid=n1.nameid)
ORDER BY ensurname, enname
) as U
WHERE U.ennick LIKE '%test is here%'

Спасибо большое за оперативность, очень помог! Вот у меня вопрос по моему объединению, как считаешь лучше использовать в нем WHERE (как я сделал) или JOIN?
Oyeme
http://stackoverflow.com/questions/894490/...es-on-from-line

Цитата
LEFT and INNER JOIN is the wave of the future.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.