Mam pole INT w moim stole, które chciałbym wybrać jako łańcuch z zerową wyściółką. Na przykład 8 będzie wyglądać jak 008
, 23 jako 023
i tak dalej. Czy to możliwe w zapytaniu MySQL?Czy istnieje odpowiednik sprintu w MySQL?
Odpowiedz
Szukacie funkcji LPAD
:
SELECT LPAD(23, 3, '0'); -- '023'
Edit:
Jak podkreślił @Brad w komentarzach, można również zdefiniować kolumnę ZEROFILL:
`foo` INT(3) ZEROFILL
To zawsze generuje co najmniej 3 cyfry (liczby zerowe mają mniej niż 3 cyfry, a nie e skażcie tych więcej). Przydaje się, jeśli zawsze potrzebujesz numerów, aby wyjść w ten sposób (I nie tylko w jednym zapytaniu) ...
W zależności od wersji posiadanego mySql, możesz zdefiniować UDF, który sformatuje wartość dla ciebie. patrz http://dev.mysql.com/doc/refman/5.1/en/adding-functions.html.
Jeśli chcesz osiągnąć minimalną liczbę wypełnień bez przecinania wyników większych liczb, musisz użyć instrukcji IF
.
Poniższy przykład sprawi, że wszystkie identyfikatory będą miały co najmniej trzy cyfry, podczas gdy większe identyfikatory będą nadal przesyłane przez nieodwracane.
SELECT IF(id < 100, LPAD(id, 3, 0), id)
- 1. Czy istnieje odpowiednik MySQL dla PHP preg_replace?
- 2. Czy istnieje prosty sposób przekształcenia tabeli MySQL w odpowiednik Redis?
- 3. Czy istnieje odpowiednik funkcji Oracle NVL w Mysql?
- 4. Czy istnieje odpowiednik javascript()?
- 5. Nancy: czy istnieje odpowiednik Server.MapPath ("~ /")?
- 6. Czy istnieje binarny odpowiednik System.Text.StringBuilder?
- 7. Czy istnieje nieglobalny odpowiednik perlbrew?
- 8. generate_series() odpowiednik w MySQL
- 9. Czy istnieje odpowiednik F # Seq.windowed w C#?
- 10. Czy istnieje odpowiednik zestawu Java w php?
- 11. Czy istnieje odpowiednik __if_exists w gnu C++?
- 12. Czy istnieje odpowiednik str_replace w C++?
- 13. Czy istnieje odpowiednik "... || die" w grze powershell?
- 14. Czy istnieje odpowiednik InnerText w BeautifulSoup/python?
- 15. Czy istnieje odpowiednik sp_getapplock, sp_releaseapplock w Oracle
- 16. Czy istnieje odpowiednik klasy Bootstrap w Plugin?
- 17. Czy w języku Java istnieje odpowiednik epollu?
- 18. Czy istnieje odpowiednik stdcall w GCC?
- 19. Czy istnieje odpowiednik suwaka // w Pythonie?
- 20. Czy istnieje odpowiednik statycznego C w C#?
- 21. Czy istnieje odpowiednik std :: ustawiony w C#?
- 22. Czy istnieje odpowiednik Groovy w języku C#?
- 23. Czy istnieje odpowiednik frexp w języku Java?
- 24. Czy istnieje odpowiednik MessageBox.Show() w kodzie MonoCode
- 25. Czy istnieje odpowiednik XDomainRequest w Firefoksie?
- 26. Czy istnieje odpowiednik miękkiego pisaka w GDI +?
- 27. Czy istnieje odpowiednik języka sqlite3_limit w PHP?
- 28. Czy istnieje odpowiednik Rake w Pythonie?
- 29. Czy istnieje odpowiednik "\ n" w VBscript?
- 30. Czy istnieje odpowiednik "gettimeofday" w .NET
Jako alternatywę dla tej odpowiedzi (oraz zależności swój cel) można dodać atrybut ZEROFILL do kolumny ([patrz MySQL typy numeryczne] (http://dev.mysql.com/doc/refman/5.0 /en/numeric-type-overview.html)) –