SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 06.01.2009 17:10:39

Golova
Завсегдатай
Зарегистрирован: 23.03.2007
Сообщений: 92

выборка не уникальных значений из разных таблиц

допустим есть три таблицы:

CREATE TABLE table1(
.....
  name varchar(64) NOT NULL DEFAULT ''
.....
) ENGINE MYISAM;

CREATE TABLE table2(
.....
  name varchar(64) NOT NULL DEFAULT ''
.....
) ENGINE MYISAM;

CREATE TABLE table3(
.....
  name varchar(64) NOT NULL DEFAULT ''
.....
) ENGINE MYISAM;

все три таблицы представляют собой единый массив ( по полю name), требуется найти не уникальные имена во всех таблицах,
так что бы в результирующем наборе в каждой строке отобразились не уникальные значения и имена таблиц содержащих эти неуникальные значения.

Неактивен

 

#2 07.01.2009 10:28:36

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: выборка не уникальных значений из разных таблиц


select name, table_name from (
select name, 'table1' table_name from table1 union all
select name, 'table2' from table2 union all
select name, 'table3' from table3) temp
 group by name having count(*)=1;
 

Неактивен

 

#3 08.01.2009 11:44:27

Golova
Завсегдатай
Зарегистрирован: 23.03.2007
Сообщений: 92

Re: выборка не уникальных значений из разных таблиц

спасибо.
только вот странно на 5.0.67 работает а на 5.0.45 нет.
и надо было поставить >1 а не =1

Неактивен

 

Board footer

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