Как сравнить две таблицы по значению и удалить разницу?

AlexPS

Новичок
Как сравнить две таблицы по значению и удалить разницу?

Имеется две таблицы, в которых есть поле USERNAME. Как из одной таблицы удалить целый ряд, если в другой таблице отсутствует ряд с идентичным значением USERNAME?
 

AlexPS

Новичок
Nirva

Имеется таблица №1:
username | passwd | firstname | lastname | email

и таблица №2:
username | right_level

Допустим в №2 есть Username NIKITA, а в №1 его нет. Нужно удалить всю строку в таблице...
 

Steamroller

Новичок
(не так понял сначала)
delete from table2 where username not in (select distinct username from table1);
 

AlexPS

Новичок
Steamroller

запрос:
delete from pmc_rights where username not in (select distinct username from pmc_reg_users);

В phpmyadmin выдает ошибку :(

может я не так понял?
 

AlexPS

Новичок
#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select distinct username from pmc_reg_users)' at line 1
 

AlexPS

Новичок
нет, не выходит, видимо не по зубам... :(
буду изучать... не догоняю и все тут...
 

Panchous

Павел
[sql]
DELETE t1
FROM table1 t1
LEFT JOIN table2 t2 ON t1.username=t2.username
WHERE t1.username IS NULL[/sql]
но лучше связь делать через id
 

AlexPS

Новичок
не понял что такое t1... можете прямо для моего случая написать?

Имеется таблица pmc_reg_users
username | passwd | firstname | lastname | email

и таблица pmc_rights
username | right_level

Допустим в pmc_rights есть Username NIKITA, а в pmc_reg_users его нет. Нужно удалить всю строку в таблице pmc_rights
 

Panchous

Павел
AlexPS
ты sql-запрос когда-нибудь видел?
названия своих таблиц сам вставить не можешь?
 

AlexPS

Новичок
DELETE pmc_reg_users FROM table1 pmc_reg_users LEFT JOIN table2 pmc_rights ON pmc_reg_users.username = pmc_rights.username WHERE pmc_reg_users.username IS NULL

выдает ошибку:
#1066 - Not unique table/alias: 'pmc_reg_users'
 

AlexPS

Новичок
со мной все ясно, пошел читать...

-~{}~ 06.10.05 18:54:

ну хоть ссылку киньте, а то я совсем с пути сбился :(
 
Сверху