数据库有IP一列,我想取出时按从小到大排列,但因为是字符串型,排列结果变成了
x.x.x.1
x.x.x.10
x.x.x.11
x.x.x.2.....
有没有办法让字符串像数字一样从小到大排列?或者取出后在java中有什么办法?
高洛峰2017-04-18 09:56:59
Postgres에는 이미 IP 유형이 있으므로 설계 시 필드 유형으로 사용해야 합니다
아무튼 이 문제를 말씀하셨으니 IP 유형으로 변환해서 정렬하시면 됩니다
으아악PHPz2017-04-18 09:56:59
정수로 변환한 후 정렬하세요. IP와 같은 필드의 경우 문자열 대신 데이터베이스에 직접 정수를 저장하는 것이 좋습니다
변환의 예를 들어주세요:
으아악PHP中文网2017-04-18 09:56:59
IP 주소를 먼저 int 유형으로 변환한 다음 데이터베이스에 저장할 수 있습니다. 또는 데이터베이스의 문자열을 Java에서 Long으로 변환한 다음 비교하세요.
IP 주소는 0~255의 네 부분으로 구성되며 각 부분은 1Byte이고 네 부분은 정확히 4Byte인 정수입니다.
巴扎黑2017-04-18 09:56:59
쉘 정렬 가능:
으아악vim으로 정렬:
으아악마지막으로 Python 버전을 제공하겠습니다. Java에서 수정할 수 있습니다.
으아악