sql >> Databasteknik >  >> RDS >> PostgreSQL

Använda ruby ​​för att konvertera osignerade heltal lagrade som signerade tillbaka till det ursprungliga värdet

Jag är inte säker på Ruby-specifikationerna, men i huvudsak måste du lägga till 2^64 om siffran är negativ. Det förutsätter att numret lagras som 2:s komplement, vilket det nästan säkert är.

FYI, 2:ans komplementsystem, behandlar i huvudsak ett (säg) 32-bitars nummer som ett nummer mod 2^32. Det betyder att -1 är samma sak som 2^32 - 1 eller 0xFFFFFFFF. Detta visar sig vara väldigt enkelt att använda på hårdvarunivå.



  1. #1064 - Du har ett fel i din SQL-syntax; kontrollera manualen som motsvarar din MySQL-serverversion

  2. Åtgärda "FEL:  varje UNION-fråga måste ha samma antal kolumner" i PostgreSQL

  3. För att använda standard BatchConfigurer får sammanhanget inte innehålla mer än en datakälla, hittad 2

  4. sqlalchemy, ställer in MySQL-teckenuppsättningen som `create_engine`-argument