我們已將IP地址存儲爲Vertica數據庫中的二進制文件。如何將它們轉換爲xxx.xxx.xxx.xxx之類的IP地址以顯示在SSRS報告中?如何將二進制數據類型轉換爲IP字符串
0
A
回答
0
我不知道是否有一個「官方批准」的方法,如果沒有其他人建議,我想你會找一個黑客。如果是這樣,嘗試提取一個二進制IP地址,並通過一個十六進制轉發器傳遞它,併發布你得到的,如果可能的話還有相應的IP地址。
爲十六進制轉儲的Unix工具是OD,使用這樣的:
od -x somefile
或
echo something | od -x
0
在您的文章的面具暗示你有IPv4地址。因此,一個簡單的例子是(按順序假設網絡):
SELECT INET_NTOA(HEX_TO_INTEGER(TO_HEX(HEX_TO_BINARY('a0b0c0d0'))));
哪裏HEX_TO_BINARY('a0b0c0d0')
僅僅是爲示範的緣故。
對於IPv6,Kermit在他的評論中建議使用V6_NTOA。
相關問題
- 1. 如何將IP地址轉換爲二進制(16)字符串?
- 2. 將字符串轉換爲二進制
- 3. 將字符串轉換爲二進制
- 4. 將二進制轉換爲字符串
- 5. 將字符串轉換爲二進制
- 6. 將二進制字符串轉換爲二進制文字
- 7. 將二進制字符串轉換爲二進制
- 8. Python將二進制字符串轉換爲二進制int
- 9. 計算二進制表達式 - 將字符串轉換爲二進制數據
- 10. 將SQL二進制數據轉換爲C#中的字符串
- 11. 將二進制數據轉換爲字符串
- 12. 將二進制數據幀轉換爲字符串
- 13. 將字符串轉換爲const char *(使用二進制數據)
- 14. 將二進制數據轉換爲節點中的字符串
- 15. 將二進制數據轉換爲字符串[在波斯語]
- 16. 將字符串數據轉換爲二進制圖像
- 17. 如何將二進制數據從數據庫轉換爲字符串(文本)
- 18. Go - 如何將二進制字符串轉換爲二進制字節?
- 19. 將字符串類型的二進制數字轉換爲java中的位
- 20. 將字符串轉換爲二進制字符串
- 21. 將二進制字符串轉換爲文本字符串
- 22. 轉換字符串「s」爲二進制
- 23. 將二進制字符串轉換爲有符號整數 - Python
- 24. 如何將二進制數字轉換爲八進制數字?
- 25. 將二進制字符串表示轉換爲字節數組
- 26. 將二進制字符串轉換爲字節數組
- 27. 如何將NSInteger或NSString轉換爲二進制(字符串)值
- 28. 如何將二進制int轉換爲字符串?
- 29. 如何將二進制文本轉換爲字符串?
- 30. 如何將字符串轉換爲二進制緩衝區?
你能告訴我們IP是如何存儲的嗎? IPv4,IPv6包含小數等...有關更多信息,請參閱[二進制數據類型](https://my.vertica.com/docs/6.1.x/HTML/index.htm#11033.htm)。如果您使用的是IPv6地址,Vertica內置了用於轉換爲二進制的函數:[V6_ATON](https://my.vertica.com/docs/6.1.x/HTML/index.htm#11377_1.htm) &[V6_NTOA](https://my.vertica.com/docs/6.1.x/HTML/index.htm#11378_1.htm) – Kermit
謝謝FreshPrinceOfS。 – lazybones