powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление строк по повторяющейся ячейке
9 сообщений из 9, страница 1 из 1
Удаление строк по повторяющейся ячейке
    #38706946
psfdek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть 3 таблицы:

Таблица 1: obj
obj_id owner_phone

Таблица 2: obj_archive
obj_id owner_phone

Таблица 3: obj_li
obj_li_id owner_li_phone

Столбец id во всех трех таблицах KEY AUTO_INCREMENT

Так вышло что в таблицах необходимо удалить все строки где значение поля телефон повторяется, оставив только 1 строку.
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707056
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
psfdekЕсть 3 таблицы:

Таблица 1: obj
obj_id owner_phone

Таблица 2: obj_archive
obj_id owner_phone

Таблица 3: obj_li
obj_li_id owner_li_phone

Столбец id во всех трех таблицах KEY AUTO_INCREMENT

Так вышло что в таблицах необходимо удалить все строки где значение поля телефон повторяется, оставив только 1 строку.

мдя..несладко прийдёться системе... раз её рулевой, так задал вопрос.
ЗЫ
тоесть удаление дублей в трёх таблицах, чем то отличаеться от удаления дублей в одной???
ЗЫЗЫ
если на поиске данного сайта вбить - удалить дубликаты, статья из фака где сразу несколько решений и все простые(для понимания и даже без понимания воспроизведения) - будет первой строчкой
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707058
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
psfdekв таблицах необходимо удалить все строки где значение поля телефон повторяется, оставив только 1 строку.В каждой таблице независимо? в ФАК...
Или оставить одну запись на все три таблицы? тогда доопредели задачу.
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707099
psfdek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оставить одну строку на все три таблицы.
Т.е если в тбл1 есть эта строка а так же в тбл2 и тбл3 то оставляем 1 строку в тбл1 удаляем в тбл2 и тбл3.

Приоритет по порядку в общем, самая главная тбл1 потом тбл2 и затем тбл3.
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707117
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
psfdek, удалить "лишние" телефоны из третьей

Код: sql
1.
2.
delete t3
from table3 t3 join table1 t1 on t3.phone=t1.phone

аналогично из второй

ну а как после этого удалить из третьей те телефоны, которые есть во второй, думаю, и сами догадаетесь
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707129
psfdek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglir,
а как удалить только в одной таблице все дубли?
Так как в тбл3 дублей много которых нет в тбл1 и тбл2.
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707139
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
psfdekа как удалить только в одной таблице все дубли?***!
alex564657498765453если на поиске данного сайта вбить - удалить дубликаты, статья из фака где сразу несколько решений и все простые(для понимания и даже без понимания воспроизведения) - будет первой строчкой
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707249
psfdek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет что бы ссылку показать вы все говорите ищи, а мне не понятно ничего из сообщений в поиске так как я в mysql пока еще не очень.

Больше времени потратил на вопросы к зазнайкам чем писал этот код на php.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
<?php if (!require_once (dirname(__FILE__).'/../../../../cfg/cfg.php')){echo 'Отсутствует файл конфигурации!';exit;} ?> Конфиг с подключением к БД
<?php
	$query_objar_ar="SELECT * from `{$tprefix}[Имя таблицы]`;";
	$select_objar_ar=mysql_query($query_objar_ar);
	$delrez=0;
	while($row = mysql_fetch_assoc($select_objar_ar)){
			
	$DT_row_ar_ob1 = $row['[Строка для сравнения]'];
	if(!empty($DT_row_ar_ob1)){
		$query_phone="SELECT COUNT(`[Строка для сравнения]`) from `{$tprefix}[Имя таблицы]` where `[Строка для сравнения]`={$DT_row_ar_ob1};";
		$select_phone_st=mysql_query($query_phone);
		$row_phone_arr = mysql_fetch_array($select_phone_st);				
		$DT_phone1 = $row_phone_arr[0];
		if($DT_phone1>1){
			$numdel=$DT_phone1-1;
			$query_del_duble="DELETE FROM `{$tprefix}[Имя таблицы]` where `[Строка для сравнения]`={$DT_row_ar_ob1}  LIMIT {$numdel}";
			if(mysql_query($query_del_duble)){$delrez+$numdel;}
		}
	}
}
echo $delrez.' шт. дубликатов удалено.<br>';
?>
...
Рейтинг: 0 / 0
Удаление строк по повторяющейся ячейке
    #38707495
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
psfdek,

А сделал бы как сразу подсказали, вбил бы в поиск, зашол бы в фак, скопировал бы решение поменяв название таблицы и поля, было бы ещо быстрее.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление строк по повторяющейся ячейке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]