harshitawkk Ответов: 4

Sql-запрос для создания нового столбца


У меня есть данные в одном столбце под названием first name в этом формате " ANNETTE W * LOW "

я хочу сделать еще один столбец под названием фамилия и поместить все данные в last name после этого *

входные данные-это имя
АННЕТ ВТ * НИЗКИЙ

вне положите необходимое :

имя фамилия
АННЕТ, НИЗКИЙ УРОВЕНЬ Ш

запросите sql запрос пожалуйста



Что я уже пробовал:

.........................................

ZurdoDev

Где ты застрял?

harshitawkk

мне нужна ваша помощь, чтобы получить запрос

ZurdoDev

Ты уже говорил это. Покажите код, который вы написали, и объясните, где вы застряли. Я не буду делать ВСЮ работу за тебя.

RedDk

Используй бол. Это очень приятный том.

MadMyche

И какой вкус SQL вы используете; MySql, Oracle, (MS) Sql Server?

Santosh kumar Pithani

Попробуйте узнать и поставить то, что вы пытались достичь.мы всегда поможем вам;без ваших усилий вы не знаете о коде его тщетно ставить в качестве решения!

4 Ответов

Рейтинг:
6

Duncan Edwards Jones

Сначала вам нужно добавить столбец с помощью команда ALTER table команда..

Затем обновите данные, чтобы вставить часть фамилии

Затем обновите данные, чтобы удалить фамилию из части имени


harshitawkk

вы знаете, как написать запрос ?

этот процесс я знаю от

ZurdoDev

Просто предположение, но я думаю, что им не нужно хранить его таким образом, просто запрашивать таким образом. Я знаю, что они сказали добавить колонку, но я не думаю, что операция на самом деле очень техническая.

Duncan Edwards Jones

Ну да, это имеет значение.

Вы хотите иметь новый столбец в своей таблице или просто разделить возврат запроса на две части?

Рейтинг:
1

OriginalGriff

Цитата:
вы знаете, как написать запрос ?

этот процесс я знаю от
Это не совсем так работает.
Мы не делаем вашу работу за вас.
Если вы хотите, чтобы кто - то написал ваш код, вы должны заплатить- я предлагаю вам пойти в Freelancer.com и спросите там.

Но знайте: вы получаете то, за что платите. Плати копейки, получай обезьян.

Идея "развития" заключается в следующем: "систематическое использование научно - технических знаний для достижения конкретных целей или требований." BusinessDictionary.com[^]
Это не то же самое, что "быстро гуглите и сдавайтесь, если я не могу найти точно правильный код".
Так что либо заплатите кому-нибудь за это, либо научитесь писать сами. Мы здесь не для того, чтобы делать это за вас.


Mohibur Rashid

Заплатите бананом, вы получите обезьяну с аллергией на арахис или без нее

Рейтинг:
0

MadMyche

Первое, что вам нужно сделать, это изменить дизайн таблицы, чтобы добавить в нее новый столбец
Добавление столбцов в таблицу (компонент Database Engine) | Microsoft Docs[^]

Второе, что вам нужно будет знать, как это сделать, - это обновить данные в таблице.
Обновление (Transact-SQL) | Microsoft Docs[^]

Вышеперечисленные функции работают на всех версиях MS Sql Server начиная с 2000 года.
Самое сложное-это создать информацию, необходимую для обновления того, что уже есть в вашей таблице.
Если у вас есть версии 2016 или 2017, есть команда STRING_SPLIT, которую вы можете использовать.
STRING_SPLIT (Transact-SQL) | Microsoft Docs[^]

Если у вас есть более ранняя версия, вам нужно будет найти сценарий для создания аналогичной функции.


Richard Deeming

Я думаю, что вы поставили неправильную ссылку под вторым абзацем - STRING_SPLIT не работает в "каждая версия MS Sql Server начиная с 2000 года". :)

MadMyche

Черт возьми, C/P'D неверная ссылка, исправлю, спасибо

Рейтинг:
0

kirthiga S

DECLARE @Table TABLE(Name varchar(100))
insert into @Table values('ANNETTE W * LOW')
select Name,substring(Name,0,charindex('*',Name))FirstName ,SUBSTRING(Name,charindex('*',Name)+1,LEN(Name)-charindex('*',Name))LastName from @Table


CHill60

Я собирался предложить это и для более ранних версий SQL, а не накладные расходы на введение UDF для разделения строки (как бы это ни было полезно для других вещей). Я не думаю, что это заслужило понижение голоса, поэтому я противодействую этому.