2013-02-08 4 views
0

Я новичок в MYSQL. У меня есть два столбца A и B, и я хочу заполнить столбец C таким, чтобы значение (C) = func(valA, valB). У меня уже есть A и B заполненные колонки, и я хочу сделать записи в колонке C. Любая помощь приветствуется. Спасибо. РЕДАКТИРОВАТЬ:Заполнение столбца в зависимости от значения других столбцов SQL

DECLARE @g geometry; 
SET @g = geometry::Point(Latitude, Longitude, 4326) 

мне нужно вставить @g в колонке C и у меня есть широта (колонка А) и долготу (колонка В). Я в состоянии выполнить следующие операции:

UPDATE myTable 
SET `C` = `A` + `B` 

Но когда я пытаюсь выполнить

UPDATE myTable 
SET `C` = geometry::Point(`A`, `B`, 4326), //--it gives me an error that `error occurred during execution of geometry` 

Любые предложения? Я новичок в этом, поэтому, возможно, я ошибаюсь.

+1

Вы должны решить 'MySQL' или' T-SQL' (SQL Server 2008R2). Также непонятно, нужен ли 'UPDATE' столбец' C' или 'SELECT'? –

+0

Вам действительно нужен третий столбец с производными только данными? – Matthew

+0

Мне нужны производные данные в третьем столбце из двух столбцов, и я использую SQL Server 2008 R2. Я бы предпочел использовать MySQL, поскольку у меня нет большой идеи о T-SQL – PhantomM

ответ

1

попробовать этот

update your_table set C = Concat(A,',',B) 

EDIT:

может быть, вы имеете в виду географии не геометрии.

GEOGRAPHY для координат/точек и GEOMETRY для регионов/полигонов.

попробовать это

UPDATE myTable 
SET `C` = geography::Point(`A`, `B`, 4326); 

здесь некоторые Different ways to add point data in SQL Server 2008

+0

Я отредактировал свою проблему, это решение может быть неприменимо .... – PhantomM

+0

Я отредактировал мой ответ –

Смежные вопросы