powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Обновление записей в таблице
10 сообщений из 10, страница 1 из 1
Обновление записей в таблице
    #39700647
vadim.mayorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую всех!
Прошу помощи в решении задачи обновления записей в одной колонки таблицы MySQL. Имеется база с серийными номерами RFID карт в двух форматов 11 и 8 значными кодами. Нужно по 8 значному коду RFID sql запросом убрать где три, где четыре нуля в конце. Если sql запросом такое невозможно выполнить, то посоветуйте пожалуйста иной метод.
Записи, которые необходимо отредактировать выделил.
Спасибо.

1 10142 ТК НХ66, 68722808702
2 17587 ТК НХ65 55829000
3 17587 ТК НХ65, 68728809365
4 05297 ТК НХ66 37702000
5 05297 ТК НХ66, 68722791238
6 гос.номер 58760 37179000
7 гос номер 58760, 68722790715
8 10129 ТК МТЗ-82 28848000
9 10129 ТК МТЗ-82, 55843254448
10 14447 ТК НХ65 62096000
11 14447 ТК НХ65, 55843222160
12 13657 ТК НХ65 14830000
13 13657 ТК НХ65, 55842912750
14 03130 АН NH T8050 10580000
15 03130 АН NH T8050, 55842898978
16 10140 ТК NH TX66 10440000
17 10140 ТК NH TX66, 55843236040
18 67561 АА NH CSX7080 77700000
19 67561 АА NH CSX7080 55843233370
20 67560 АА NH CSX7080 15633000
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39700653
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadim.mayorovЕсли sql запросом такое невозможно выполнитьЗапросом это элементарно.
DDL таблицы и результат для выделенных записей в студию.
vadim.mayorovубрать где три, где четыре нуляСтрого определите, когда три, а когда четыре. Заодно (ну чтоб два раза не бегать) - что делать, когда их пять.
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39701071
vadim.mayorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, прошу прощения, что такое DDL таблицы ? Выгрузка таблицы в формате sql ?
Необходимо в записях формата 8 (не 11) знаков RFID убрать в конце 3, 4 или 5 нулей.

Было:
1 10142 ТК НХ66, 68722808702
2 17587 ТК НХ65 55829000

Должно стать:

1 10142 ТК НХ66, 68722808702
2 17587 ТК НХ65 55829

Было:
3 17587 ТК НХ65, 68728809365
4 05297 ТК НХ66 37702000

Должно стать:
3 17587 ТК НХ65, 68728809365
4 05297 ТК НХ66 37702

Было:
11 14447 ТК НХ65, 55843222160
12 13657 ТК НХ65 14830000

Должно стать:
11 14447 ТК НХ65, 55843222160
12 13657 ТК НХ65 1483


И так далее.
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39701142
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadim.mayorovчто такое DDL таблицы ?Data Definition Language. В общем, код создания таблицы.

Выполни SHOW CREATE TABLE имя_таблицы и скопируй результат сюда.
vadim.mayorovубрать в конце 3, 4 или 5 нулейА если их будет 6? А если 2?
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39701209
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И ещё - как определить, сколько нулей в каждом конкретном случае удалять? Все? или есть случаи, когда НЕ все?
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39701289
vadim.mayorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вывод show create table:

f_drivers | CREATE TABLE `f_drivers` (
`driver_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL DEFAULT '0',
`company_id` bigint(20) unsigned NOT NULL,
`birthday` date DEFAULT NULL,
`rfid` varchar(50) DEFAULT NULL,
`tel_number` varchar(25) DEFAULT NULL,
`tel_number_other` varchar(25) DEFAULT NULL,
`passport` varchar(255) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`position` varchar(100) DEFAULT NULL,
`brigade` varchar(100) DEFAULT NULL,
`empl_code` varchar(50) DEFAULT NULL,
`driver_license` varchar(20) DEFAULT NULL,
`grade` varchar(50) DEFAULT NULL,
`category` varchar(20) DEFAULT NULL,
`photo` varchar(255) DEFAULT NULL,
PRIMARY KEY (`driver_id`),
KEY `FK_f_drivers_f_users_company` (`company_id`),
CONSTRAINT `FK_f_drivers_f_users_company` FOREIGN KEY (`company_id`) REFERENCE
S `f_users_company` (`users_company_id`)
) ENGINE=InnoDB AUTO_INCREMENT=761 DEFAULT CHARSET=utf8

Удалять необходимо все нули в конце 8-ми значных кодов.
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39701297
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
UPDATE f_drivers
SET rfid = TRIM(TRAILING '0' FROM rfid)
WHERE LENGTH(rfid) = 8
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39705991
vadim.mayorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina
Код: sql
1.
2.
3.
UPDATE f_drivers
SET rfid = TRIM(TRAILING '0' FROM rfid)
WHERE LENGTH(rfid) = 8



Akina, спасибо большое! Вашим sql запросом удалось решить задачу.
Возник дополнительный вопрос, можно ли каким-либо способом импортировать базу rfid карт из файла excel в базу MySQL ?
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39706009
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadim.mayorovможно ли каким-либо способом импортировать базу rfid карт из файла excel в базу MySQL ?Во проблема... сохраняешь в текст (CSV или иной формат) и загружаешь в подготовленную таблицу через LOAD DATA INFILE.
...
Рейтинг: 0 / 0
Обновление записей в таблице
    #39794295
vadim.mayorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, спасибо! Благодаря Вашей помощи всё получилось.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Обновление записей в таблице
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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