Security Teams



:::
  Ответ в темуСоздание новой темыСоздание опроса

> MySQL выборка значений
nameless
Дата 25.05.2008 - 14:51
Цитировать сообщение
Offline



.:Тень:.
******

Профиль
Группа: -experts-
Сообщений: 1745
Пользователь №: 18
Регистрация: 19.02.2005



Рейтинг:
(90%) XXXXX


Есть база данных (base), в ней есть 2 таблицы (t1, t2), структура этих таблиц идентичная, но вот заполнены они разными данными. Как можна в t1 добавить те записи из t2, которые отсуцтвуют в t1?


--------------------
Мы расправим крылья
PM
Top
Kom@nd'Or
Дата 25.05.2008 - 18:24
Цитировать сообщение
Offline



Expert
******

Профиль
Группа: -editors-
Сообщений: 2078
Пользователь №: 48
Регистрация: 2.03.2005



Рейтинг:
(90%) XXXXX


Если есть уникальное поле, однозначно идентифицирующее строку (её уникальность), то проверкой этого поля можно определить дублируется-ли эта строка ...

И соответственно добавлять или нет ...


--------------------
--
Hайден неизвестный драйвер, воткните какое-нибудь устройство!
---
[b]Во имя процесса-отца, процесса-сына и святаго root"а... Enter! [/b]
PMICQYahoo
Top
nameless
Дата 25.05.2008 - 19:59
Цитировать сообщение
Offline



.:Тень:.
******

Профиль
Группа: -experts-
Сообщений: 1745
Пользователь №: 18
Регистрация: 19.02.2005



Рейтинг:
(90%) XXXXX


Было бы хорошо посмотреть на практическую реализацию.
ЗЫ Забыл сказать, ключевым будет только 1 столбец, тоесть нужно сравнивать значения именно из него, и если такого значения нету а t1, то перенести весь ряд из t2 в t1.
ЗЗЫ Ну вобщем то да - мона написать скриптец на перле, который бы перелопачивал каждое значение поочерёдно, но что то подсказывает мне, что сделать это можно средствами мускуля, и это будет на много лучше.


--------------------
Мы расправим крылья
PM
Top
nameless
Дата 14.09.2008 - 18:03
Цитировать сообщение
Offline



.:Тень:.
******

Профиль
Группа: -experts-
Сообщений: 1745
Пользователь №: 18
Регистрация: 19.02.2005



Рейтинг:
(90%) XXXXX


Пусть есть 2 таблицы:
t1(b1, b2) и t2(b1, b2), где b1 и b2 - имена столбцов. Стравниваем только значения столбцов b1 обоих таблиц.

Решение для мускула (это всё в мане написано, нужно было только прочитать его =)), делаю двумя запросами, потому что до жойна не дорос =):

delete t2 from t1,t2 where t1.b1=t2.b1;
insert into t1 (b1,b2) select b1,b2 from t2;

Первой командой из таблицы t2 удаляем все строки, где поля t2.b2 повторяются в таблице t1.
Второй командой выгребам всё, что осталось и добавляем в первую таблицу. Фсё =)


--------------------
Мы расправим крылья
PM
Top
Reantwist
Дата 7.11.2009 - 05:46
Цитировать сообщение




Unregistered












Сдраствуйте.
Потихоничку ковыряюсь учусь. Половину значений как всегда пока ещё не понимаю.
Выбирать по таблицам и разным базам научился. Более мение принцип начинаю понимать.
А вот как сделать что-б правильно делило другими словами "по людски"
Это я уже приплыл.
Есть таблица с ip-адресами и килобайтами, и всё это дело в одной куче.
Есть таблица с клиентами с разделёнными столбцами забугор и мы.
Надо разбить таблицу с ip-адресами и килобайтами, по таблице клиентов, на две части "забугор и мы".
Может кто знает или подскажет как MySQL заставить/научить делить зоны.
Я с мускулом работаю только неделю и незнаю на что он способен:
Знает ли он про 89.188.107.0/24.
Спрашиваю у вас потому что уверен вряд-ли MySQL правильно посчитает формулу 2 в степени 7 - 2.
Если MySQL невозможно научить, то подскажите как его научить обращаться к Perl скрипту?
Top

Опции темы Ответ в темуСоздание новой темыСоздание опроса