SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 17.05.2009 10:52:50

Fyz13
Участник
Зарегистрирован: 17.05.2009
Сообщений: 3

объединение и выборка

Здравствуйте!
Мне нужно сделать чтоб объединялись 2 таблицы по 1 полю orderID и выбирались одинаковые поля...
я думаю что это делается как то так

$sql = "SELECT *, count(*) c FROM (Select *  from  t1 INNER JOIN t2 ON (t1.orderID = t2.orderID)) GROUP BY orderID HAVING c > 1";

???????

Неактивен

 

#2 17.05.2009 14:16:38

Fyz13
Участник
Зарегистрирован: 17.05.2009
Сообщений: 3

Re: объединение и выборка

нет так наверно не правильно и не понятно....

вобщем надо объединить 2 таблицы по 1 полю orderID    (Select *  from  t1 INNER JOIN t2 ON (t1.orderID = t2.orderID)-это работает  и выбрать одинаковые строки, например с ID 1 может быть несколько строк с ид 2 еще несколько не фиксированное количество и еще чтоб в запросе не было например так (Select *  from  t1 INNER JOIN t2 ON (t1.orderID = t2.orderID) and t1.orderID= 1 ....

Так вообще сделать возможно? Я уже весь день голову ломаю....

Неактивен

 

#3 18.05.2009 11:47:11

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: объединение и выборка

Брр, ничего не понял smile

У Вас есть две таблицы t1 и t2. Вы хотите
а) найти строки с одинаковым orderID между таблицами
б) найти строки с одинаковым orderID внутри одной из таблиц
в) как-то их связать?

SELECT t1.orderID
FROM t1
JOIN (
SELECT orderID, count(*) c
FROM t2
GROUP BY orderID
HAVING c > 1
) t2m USING orderID;

Такого зверя Вам надо?

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson