Jak podzielić ciąg z nazwą w mysql?
Na przykład:
name
-----
Sachin ramesh tendulkar
Rahul dravid
Podziel nazwę na przykład firstname,middlename,lastname
:
firstname middlename lastname
--------- ------------ ------------
sachin ramesh tendulkar
rahul dravid
Odpowiedzi:
Podzieliłem tę odpowiedź na dwie (2) metody. Pierwsza metoda oddzieli Twoje imię i nazwisko na imię, drugie imię i nazwisko. Drugie imię będzie wyświetlane jako NULL, jeśli nie ma drugiego imienia.
Ta druga metoda traktuje drugie imię jako część nazwiska. Z pola pełnego imienia i nazwiska wybierzemy tylko kolumnę imię i nazwisko.
Jest wiele fajnych rzeczy, które możesz zrobić za pomocą substr, locate, substring_index itp. Zajrzyj do instrukcji pod kątem prawdziwego zamieszania. http://dev.mysql.com/doc/refman/5.0/en/string-functions.html
źródło
Cóż, nic, czego użyłem, nie działało, więc zdecydowałem się stworzyć naprawdę prostą funkcję podziału, mam nadzieję, że pomoże:
źródło
Oto funkcja podziału, której używam:
źródło
W MySQL nie ma funkcji dzielenia ciągów. więc musisz stworzyć własną funkcję. To ci pomoże. Więcej szczegółów pod tym linkiem .
Funkcjonować:
Stosowanie:
Przykład:
źródło
Możesz również użyć bewlo one:
źródło
źródło
Aby uzyskać resztę ciągu po drugim wystąpieniu ogranicznika spacji
źródło
Wyjaśnienie:
Znalezienie imienia i nazwiska jest łatwe, wystarczy użyć funkcji SUBSTR_INDEX Magia dzieje się w środkowym imieniu, gdzie została użyta SUBSTR z lokalizacją, aby znaleźć pierwszą pozycję spacji i DŁUGOŚĆ pełnej nazwy - (DŁUGOŚĆ imię + DŁUGOŚĆ nazwisko), aby uzyskać całe drugie imię.
Zauważ, że LENGTH imienia i nazwiska zostało obliczone przy użyciu SUBSTR_INDEX
źródło
źródło
Wykonaj tę funkcję w mysql. 2. stworzy to funkcję. Teraz możesz korzystać z tej funkcji w dowolnym miejscu.
3. Powyższy pierwszy parametr getNameInitails to łańcuch, który chcesz filtrować, a drugi to znak widza, na którym chcesz oddzielić łańcuch. 4. W powyższym przykładzie „Kaleem Ul Hassan” to imię i chcę uzyskać inicjały, a moim separatorem jest spacja ”.
źródło
Wartość oczywiście Nazwa i nazwa rozdziału przechowujemy w jednej kolumnie ChapterName.
Przechowywana wartość, np. „JAVA: Polimorfizm”
musisz pobrać CourseName: JAVA i ChapterName: Polymorphism
Poniżej znajduje się zapytanie wybierające SQL do pobrania.
Daj mi znać, jeśli masz jakieś pytania w tej sprawie.
źródło
Aby uzyskać resztę ciągu po drugim wystąpieniu ogranicznika spacji:
źródło
Możesz użyć schematu common_schema i
tokenize
funkcji. Aby uzyskać więcej informacji na ten temat, skorzystaj z łączy. Twój kod będzie wyglądał następująco:call tokenize(name, ' ');
Należy jednak pamiętać, że spacja nie jest niezawodnym separatorem imienia i nazwiska. Np. W Hiszpanii powszechne jest posiadanie dwóch nazwisk.
źródło
źródło
Pierwsza procedura tworzenia, jak poniżej:
Następnie utwórz procedurę jak poniżej:
Jak zadzwonić test
źródło
Połączyłem tutaj kilka odpowiedzi, aby utworzyć SP, który zwraca części ciągu.
źródło