การเก็บราคาใน SQLite ต้องใช้ data ชนิดใด?


15

ฉันใช้ SQLite และต้องการเก็บราคา REALประเภทข้อมูลของ SQLite บอกว่ามันใช้floating-pointซึ่งเป็นที่เก็บข้อมูลที่ยอมรับไม่ได้สำหรับราคา มี data-type นอกเหนือจาก TEXT ที่ฉันสามารถใช้เพื่อเก็บราคาเป็นตัวเลขเพื่อให้เรียงลำดับถูกต้องหรือไม่

คำตอบ:


25

ใช้จำนวนเต็ม & เก็บราคาเป็นหน่วยสามัญที่ต่ำที่สุด ดังนั้นสำหรับดอลลาร์และเซนต์คุณต้องเก็บไว้ในเซนต์ EG: $ 1.00 จะถูกเก็บไว้ที่ 100

ในประสบการณ์ของฉันมันเป็นมาตรฐานการปฏิบัติ


3
มันเป็นงานพิเศษ แต่นี่เป็นวิธีที่จะไปคุณต้องมีฟิลด์ประเภทสกุลเงินเพื่อจัดเก็บด้วยค่าเพื่อให้คุณรู้วิธีแปลงกลับ คุณต้องให้ความสนใจเช่นกัน - สกุลเงินส่วนใหญ่ใช้ทศนิยม 2 ตำแหน่ง แต่บางสกุลใช้สาม ตรวจสอบ ISO 4127 สำหรับรายการทั้งหมด
lonstar

CLF Chilean Unidad de Fomento ใช้ทศนิยม 4 ตำแหน่ง Bitcoin มากยิ่งขึ้น :-)
Gianluca Ghettini

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.