Как я могу получить первые 3 цифры в 123456 номеров в sql?

Вопрос:У меня есть поле под названием CallingParty в моей таблице CDR, оно содержит данные вроде этого CallingParty 267672668788 Я хочу выбрать первые 3 числа каждого из этих чисел, например CallingParty 267 Ответ №1 если CallingParty имеет тип int: SELECT CAST(LEFT(CallingParty, 3) AS INT) From CDR Ответ №2Используйте этот запрос: SELECT SUBSTRING(CAST(CallingParty AS VARCHAR(50)), 1, 3)

Вопрос:

У меня есть поле под названием CallingParty в моей таблице CDR, оно содержит данные вроде этого

CallingParty

267672668788

Я хочу выбрать первые 3 числа каждого из этих чисел, например

CallingParty

267

Ответ №1

если CallingParty имеет тип int:

SELECT CAST(LEFT(CallingParty, 3) AS INT) From CDR Ответ №2

Используйте этот запрос:

SELECT SUBSTRING(CAST(CallingParty AS VARCHAR(50)), 1, 3) FROM [CDR] Ответ №3

SQL Server имеет функцию Left(), но лучше всего работает с строками. (varchar/ char в SQL)

Select left(cast(267672668788 as varchar), 3) Ответ №4

Если длина данных не изменяется, вы всегда можете разделить на 10 * цифры, которые у вас есть

SELECT FLOOR(267672668788 / 1000000000) =267 Ответ №5

Попробуй это:

SELECT Substring(callingparty, 1, Length(callingparty) — 9) FROM cdr;

Оцените статью
Добавить комментарий