পোস্টগ্রিএসকিউএল-এ কীভাবে আমি একটি স্ট্রিংকে একটি ডাবল নির্ভুলতায় রূপান্তর করতে পারি? [বন্ধ]


19

পোস্টগ্রিএসকিউএল-এ কীভাবে আমি একটি স্ট্রিংকে একটি ডাবল নির্ভুলতায় রূপান্তর করতে পারি?

আমি এরকম কিছু চেষ্টা করেছি:

update points set latitude2 = cast(latitude as double) ;

যেখানে অক্ষাংশ একটি স্ট্রিং এবং অক্ষাংশ 2 একটি দ্বিগুণ। আমি এটি কাজ করতে পারি না।


6
" এটি কাজ করতে পারে না " বৈধ পোস্টগ্রিস ত্রুটি বার্তা নয়। দয়া করে সম্পূর্ণ ত্রুটি পোস্ট করুন (বা ঠিক কী কাজ করছে না তা বর্ণনা করুন)
এ_হর্স_বিহীন_নো নাম

ইও অন্য কারণের জন্য এটি একটি সত্যই খারাপ প্রশ্ন কারণ আপনি দ্রাঘিমাংশ এবং অক্ষাংশ সম্পর্কে জিজ্ঞাসা করছেন এবং সেগুলি যাইহোক ডাবল হিসাবে সংরক্ষণ করা উচিত নয়।
ইভান ক্যারল

উত্তর:


42

double পোস্টগ্রিসের ডেটা টাইপ নয়:

select cast('324342' as double);
ত্রুটি: টাইপ "ডাবল" বিদ্যমান নেই
লাইন 1: কাস্ট নির্বাচন করুন ('324342' ডাবল হিসাবে);
                                ^

তবে double precisionহ'ল:

select cast('132342' as double precision);
| ভাসা 8 |
| : ----- |
| 132342 |

তাই চেষ্টা করুন:

update points set latitude2 = cast(latitude as double precision) ;

যদি আপনি পছন্দ করেন তবে আপনি এর পরিবর্তে float* ব্যবহার করতে পারেন কারণ ডক্স অনুসারে :

নির্দিষ্ট কোনও নির্ভুলতা সহ ভাসমানটি ডাবল স্পষ্টতা বোঝাতে নেওয়া হয়

select cast('132342' as float);
| ভাসা 8 |
| : ----- |
| 132342 |

ডিবি <> ফিডল এখানে


* বা float(n)যেখানে 25 <= n <= 53 কারণ এটি ডাবল স্পষ্টতা বোঝাতেও নেওয়া হয়েছে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.