ฐานข้อมูล ที่เป็น ราคา mysql เก็บเป็นอะไรดีครับ +1 ทุกท่าน

เริ่มโดย rungroat4, 15 สิงหาคม 2012, 20:23:58

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

rungroat4

ผมต้องการเก็บ ให้มันสามารถใส่ เป็นทศนิยมได้เช่น 500.22 ควรเก็บเป็นอะไรดีครับ
ถ้าผมเก็บ เป็น varchar จะมีปัญหา อะไรมั๊ยครับ ปล ผมใช้มาคำนวณด้วยครับ

+1 ทุกท่านนะครับ
[direct=http://www.siamtime.co.th/]นาฬิกา[/direct]เท่ห์ ๆ ของแท้ ราคาถูก ประกันศูนย์

jira2712

ตัวผมเองก็เก็บไว้ใน varchar ครับใช้ในการคำนวน มานานแล้ว php นะครับ เป็นตัวส่งข้อมูล แต่ก็ไม่มีปัญหาอะไร การแสดงผลปกติ แต่รายละเอียดจริงๆต้องรอผู้รู้จริงๆมาชี้แนะนะครับ มาดันกระทู้อีกแรง
หัวน้ำหอม ขายส่งหัวน้ำหอม ขายหัวน้ำหอม หัวเชื้อน้ำหอม ขายส่งหัวเชื้อน้ำหอม [direct=https://zateers.com]zateers.com[/direct]
[direct=https://zateer.blogspot.com/]หัวน้ำหอม[/direct]
สารกำจัดเชื้อรา สารกำจัดโรคพืช สารป้องกันโรคพืช [direct= https://zateers.com/greens/]zateers.com/greens/[/direct]
[direct=https://greenszateer.blogspot.com/]สารกำจัดเชื้อรา[/direct]

rungroat4

[direct=http://www.siamtime.co.th/]นาฬิกา[/direct]เท่ห์ ๆ ของแท้ ราคาถูก ประกันศูนย์

kawa

เป็น float หรือ double ดีกว่าครับ ถ้าเป็น VARCHAR จะมัปํญหาดังนี้

1. เวลาเรียงจะมีปัญหา เช่น 11 จะมาก่อน 9 เพราะถือว่าตัวอักษร 1 มาก่อนตัวอักษร 9 ดังนั้นเวลาใช้ order by จะมีปัญหา เพราะมันจะเรียงตามตัวอักษร ไม่ใช่ตามค่า
2. อาจมีปัญหาในการใช้งานบางอย่าง เช่น การบวก อาจจะเจอว่ามันเอาค่ามาต่อกัน ไม่ได้บวกกัน ทำให้บางครั้งต้องทำการบวก 0 ก่อนเพื่อแปลงเป็นตัวเลข
3. ช้ากว่าเวลาคำนวน เนื่องจากต้องแปลงเป็นตัวเลขก่อน ทำให้ช้ากว่าเล็กน้อย อาจจะไม่เห็นเพราะเป็นหลัก ms แต่แน่นอนถ้าใช้งานหนักมีผลแน่นอน

Addyklub

ผมไม่ค่อยถนัด PHP นะครับ แต่ที่ผมเขียนโปรแกรม  ตระกูล Char จะเป็นตัวอักษรตัวหนังสือนั้นก็หมายความว่านำมาทำตรรกะบวกลบคูณหารไม่ได้  ที่ใช้สำหรับทศนิยมได้จะมี float กับ double ครับ ถ้าไมมีทศนิยมเป็น integer ครับ  อันนี้จากที่เขียนโปรแกรมนะครับ  ไม่รู้ว่า php จะเหมืินกันไหม

xvlnw.com

แนะนำเป็น FLOAT, DOUBLE ครับ (แต่ในความเป็นจริง FLOAT ก็พอแล้วครับ อยู่ที่ จะเก็บตัวเลขหลักอะไร)

ที่ต้องเก็บแบบนี้ เพราะจะได้ใช้ความสามารถของ SQL ได้เต็มที่ เช่น SUM, AVG, ORDER BY
[direct=https://cloudhost.in.th/wordpress-hosting]ツ ⓌⓄⓇⒹⓅⓇⒺⓈⓈ ⒽⓄⓈⓉⒾⓃⒼ [/direct] :wanwan014:  :D
[direct=https://cloudhost.in.th/cloudhosting.html]Cloud Hosting[/direct] [direct=https://cloudhost.in.th/cloudvps.html]Cloud Server[/direct] [direct=https://cloudhost.in.th/vpshosting.html]Cloud VPS Hosting[/direct] [direct=https://cloudhost.in.th/windowsvps.html]Cloud Windows[/direct] Tel: 080-348-0843 LINE: ixvlnw

Lunifer

ถ้าเป็น vb/java FLOAT ครับ
ถ้า php ผมเก็บเป็น vachar ครับ สะดวกดี

verysims

ข้อมูลที่เป็นจำนวนเงิน หรือเกี่ยวกับเงินนั้น ให้เก็บเป็นชนิด Decimal ครับ เพราะว่า Float, Double, Int นั้นเป็นค่าประมาณตัวเลขครับ หากจะให้แน่นอนจริงๆก็ต้อง Decimal ครับ เก็บรายละัเอียดได้ทุกเม็ดครับ :wanwan007:

rungroat4

+1 ให้ทุกท่านแล้วครับ
ตกลง เอา ยังไงดี

จริงๆ ผมต้องการเก็บ ข้อมูล เป็น ราคาต้นทุนครับ
ซึ่งจะเป็นราคาที่มันจะมีส่วนลดด้วย
เช่น 5% เวลาหักส่วนลดแล้ว มันจะเป็นจุดทศนิยมครับ
เช่น 3233.80

ตอนแรกผมใส่เป็น integer มันจะตัดให้เป็นจำนวนเต็มอัตโนมัติ
ครับ
[direct=http://www.siamtime.co.th/]นาฬิกา[/direct]เท่ห์ ๆ ของแท้ ราคาถูก ประกันศูนย์

eLNinYo9

อ้างถึงจาก: kawa ใน 15 สิงหาคม 2012, 22:02:32
เป็น float หรือ double ดีกว่าครับ ถ้าเป็น VARCHAR จะมัปํญหาดังนี้

1. เวลาเรียงจะมีปัญหา เช่น 11 จะมาก่อน 9 เพราะถือว่าตัวอักษร 1 มาก่อนตัวอักษร 9 ดังนั้นเวลาใช้ order by จะมีปัญหา เพราะมันจะเรียงตามตัวอักษร ไม่ใช่ตามค่า
2. อาจมีปัญหาในการใช้งานบางอย่าง เช่น การบวก อาจจะเจอว่ามันเอาค่ามาต่อกัน ไม่ได้บวกกัน ทำให้บางครั้งต้องทำการบวก 0 ก่อนเพื่อแปลงเป็นตัวเลข
3. ช้ากว่าเวลาคำนวน เนื่องจากต้องแปลงเป็นตัวเลขก่อน ทำให้ช้ากว่าเล็กน้อย อาจจะไม่เห็นเพราะเป็นหลัก ms แต่แน่นอนถ้าใช้งานหนักมีผลแน่นอน

ผมว่าที่น่าจะเห็นผลมากที่สุดก็ข้อ 1 ครับ ถ้าไม่ใช้งานพวก order by หรืออะไรที่ให้ mysql คำนวน ก็เก็บเป็นอะไรก็ได้ครับ ไม่ต่าง

binknon7


xvlnw.com

อ้างถึงจาก: xvlnw.com ใน 15 สิงหาคม 2012, 22:13:10
แนะนำเป็น FLOAT, DOUBLE ครับ (แต่ในความเป็นจริง FLOAT ก็พอแล้วครับ อยู่ที่ จะเก็บตัวเลขหลักอะไร)

ที่ต้องเก็บแบบนี้ เพราะจะได้ใช้ความสามารถของ SQL ได้เต็มที่ เช่น SUM, AVG, ORDER BY

ไปหาข้อมูลเพิ่มเติมมาละครับ
แนะนำ Decimal เท่านั้นครับ
[direct=https://cloudhost.in.th/wordpress-hosting]ツ ⓌⓄⓇⒹⓅⓇⒺⓈⓈ ⒽⓄⓈⓉⒾⓃⒼ [/direct] :wanwan014:  :D
[direct=https://cloudhost.in.th/cloudhosting.html]Cloud Hosting[/direct] [direct=https://cloudhost.in.th/cloudvps.html]Cloud Server[/direct] [direct=https://cloudhost.in.th/vpshosting.html]Cloud VPS Hosting[/direct] [direct=https://cloudhost.in.th/windowsvps.html]Cloud Windows[/direct] Tel: 080-348-0843 LINE: ixvlnw


Lunifer

ถ้าอยากเก็บจุดทศนิยมเยอะๆ vachar ครับ ยาวจนปวดตับเลย

หนึ่งสุดหล่อ

อ้างถึงจาก: xvlnw.com ใน 16 สิงหาคม 2012, 02:14:44
อ้างถึงจาก: xvlnw.com ใน 15 สิงหาคม 2012, 22:13:10
แนะนำเป็น FLOAT, DOUBLE ครับ (แต่ในความเป็นจริง FLOAT ก็พอแล้วครับ อยู่ที่ จะเก็บตัวเลขหลักอะไร)

ที่ต้องเก็บแบบนี้ เพราะจะได้ใช้ความสามารถของ SQL ได้เต็มที่ เช่น SUM, AVG, ORDER BY

ไปหาข้อมูลเพิ่มเติมมาละครับ
แนะนำ Decimal เท่านั้นครับ

ใช้ double มาตลอดเลย
:-[

iamdev


MeenyFancy

อย่าเก็บเป็น varchar ครับ มันแสดงให้เห็นความมักง่าย
Have a good trip.
[direct=http://petdeecare.com]สุนัขป่วย[/direct] [direct=http://petdeecare.com]แมวป่วย[/direct]
[direct=http://petdeecare.com]หนูป่วย[/direct] [direct=http://petdeecare.com]อาหารแมว[/direct] [direct=http://petdeecare.com]อาหารหมา[/direct]

arabanaki

[direct=https://www.codingpal.fun]อยาก coding เก่ง เริ่มต้นได้ที่ codingpal.fun [/direct]

toffyy


kuznetsova

เว็บที่ทำจาก Blogger สวยงามได้แค่ไหนชม
[direct=https://www.forexfights.com]วิธีเทรดฟอเร็กซ์ กรอบเวลาต่างๆ[/direct]
[direct=https://babbaan.in]แบบบ้านความรู้เรื่องบ้าน[/direct]
[direct=http://www.herb-health.com]แบบทรงผมข้อมูลด้านสุขภาพ ความงาม[/direct]