Update wolnego pola z innego pola |
Update wolnego pola z innego pola |
2.08.2016, 08:15:39
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Tabela:
Kod +----+----------+---------+--------+---------+ | ID | tel | wtel | mtel | htel | +----+----------+---------+--------+---------+ | 1 | 23423234 | | | 5555555 | | 2 | | 34343 | 343432 | 66666 | +----+----------+---------+--------+---------+ Wynik oczekiawny Kod +----+----------+---------+--------+---------+ | ID | tel | wtel | mtel | htel | +----+----------+---------+--------+---------+ | 1 | 23423234 | 5555555 | | 5555555 | | 2 | 66666 | 34343 | 343432 | 66666 | +----+----------+---------+--------+---------+ Chcę dla każdego wiersza zrobić taki update że: - wartość z kolumny `htel` ma być skopiowana do pierwszej wolnej kolumny `tel`, `wtel` lub `mtel`. - jeśli `tel`, `wtel` lub `mtel` są pełne - brak działania - wartość z htel powinna zostać na swoim miejscu. Problem. Jak zrobić update pierwszej wolnej kolumny (reszta powinna zostać pusta jeśli były). Nie bardzo mam pomysł na ugryzienie tego a wolałbym to załatwić jakąś SQL zamiast pisać skrypty do tego. |
|
|
2.08.2016, 09:04:54
Post
#2
|
|
Grupa: Zarejestrowani Postów: 148 Pomógł: 14 Dołączył: 23.02.2013 Ostrzeżenie: (0%) |
Dodaj kolumnę updated.
Wykonaj trzy zapytania: UPDATE tabela SET tel = htel, updated = 1 WHERE tel IS NULL AND updated = 0; UPDATE tabela SET wtel = htel, updated = 1 WHERE wtel IS NULL AND updated = 0; UPDATE tabela SET mtel = htel, updated = 1 WHERE mtel IS NULL AND updated = 0; Usuń kolumnę updated. -------------------- |
|
|
2.08.2016, 09:09:54
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
-------------------- |
|
|
2.08.2016, 09:30:39
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
@trueblue It should work...
@Lion proste i jakże banalne. Zaćma czasami potrafi człowieka zmęczyć |
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 08:15 |