PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana postgis memperlakukan koordinat yang dikirim dengan SRID yang berbeda

Mengubah SRS geometri lebih dari sekadar mengubah SRID mereka. Jadi, jika karena alasan tertentu setelah transformasi koordinat kembali dengan nilai yang sama persis, kemungkinan besar tidak ada transformasi sama sekali.

Contoh ini menggunakan ST_Transform untuk mengubah geometri dari 25832 ke 4326 . Lihat sendiri hasilnya:

WITH j (geom) AS (
 VALUES('SRID=25832;POINT (11.061 49.463)'::geometry))
SELECT ST_AsEWKT(geom),ST_AsEWKT(ST_Transform(geom,4326)) FROM j;

 

       st_asewkt            |                      st_asewkt                       
---------------------------------+------------------------------------------------------
 SRID=25832;POINT(11.061 49.463) | SRID=4326;POINT(4.511355210946569 0.000446125446657)
(1 Zeile)
  • Transformasi Poligon dalam pertanyaan Anda benar.

Pastikan bahwa Django benar-benar menyimpan nilai yang Anda sebutkan. Kirim 25832 geometri dan langsung memeriksa SRS di database. Jika Anda hanya memeriksa menggunakan django, mungkin itu mengubah koordinat kembali lagi dalam permintaan, yang mungkin menjelaskan bahwa Anda tidak melihat perbedaan apa pun.

Untuk pertanyaan Anda:

WGS84 adalah SRS yang paling banyak digunakan di seluruh dunia, jadi saya cenderung mengatakan ya, tetapi semuanya tergantung pada kasus penggunaan Anda. Jika Anda tidak yakin SRS mana yang akan digunakan, ini mungkin menunjukkan bahwa kasus penggunaan Anda tidak memaksakan batasan apa pun padanya. Jadi, tetap berpegang pada WGS84 tetapi perlu diingat bahwa Anda tidak mencampur SRS yang berbeda dalam aplikasi Anda. Btw:jika Anda mencoba menyimpan geometri di beberapa SRS dalam tabel yang sama, PostgreSQL akan memunculkan pengecualian;)

Bacaan lebih lanjut:ST_AsEWKT , WGS84



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa mengonversi semua kolom di database saya menjadi tidak peka huruf besar-kecil?

  2. Permintaan SQL untuk mencocokkan salah satu dari beberapa string

  3. Bagaimana cara mengubah database ke postgresql dengan Symfony 2.0?

  4. Tingkat isolasi SERIALIZABLE di Spring-JDBC

  5. Apa urutan catatan dalam tabel dengan kunci primer komposit?