与常规字段(varchar ....)相比,更新sql server中的geography列是否有所不同。能否请您提供示例语句来执行此操作。谢谢。
我不确定这是否是您要寻找的答案-但正如我要说的,主要区别在于,在更新“常规字段”时,通常会直接提供新值-例如:
UPDATE mytable SET name = 'John' WHERE id = 1
在更新地理位置列时,您可能无法直接提供该值(因为它是一个非常长的十六进制数字,用于编码地理信息),但是您可能想从其他一些值中进行计算(可以但不必是同一表格的各列),例如:
UPDATE mytable SET gps=geography::STPointFromText('POINT(' + lng + ' ' + lat + ')', 4326)
其中lng和lat是VARCHAR值指定在“人类可读”的格式(如GPS坐标lat = '48.955790',lng = '20.524500') -在这种情况下,它们也列mytable。
lng
lat
lat = '48.955790'
lng = '20.524500'
mytable