I have field called CallingParty in My CDR table it contains data like this:
CallingParty
------------
267672668788
I want to select the first 3 number of each of those numbers like
CallingParty
------------
267
I have field called CallingParty in My CDR table it contains data like this:
CallingParty
------------
267672668788
I want to select the first 3 number of each of those numbers like
CallingParty
------------
267
if CallingParty
is of type int:
SELECT CAST(LEFT(CallingParty, 3) AS INT)
From CDR
CAST
explicitly, LEFT(123456,3)
will do an implicit cast anyway. –
Cusec AS INT
I meant the cast to varchar
as input to the LEFT
function. Some people might prefer the explicit cast anyway but I find it more readable/less noisy without. –
Cusec SQL Server has a Left() function, but it works best on strings. (varchar/char in SQL)
Select left(cast(267672668788 as varchar), 3)
Use this query:
SELECT SUBSTRING(CAST(CallingParty AS VARCHAR(50)), 1, 3) FROM [CDR]
If the data length does not change then you can always divide by 10 * the digits you have
SELECT FLOOR(267672668788 / 1000000000)
=267
Try this:
SELECT Substring(callingparty, 1, Length(callingparty) - 9)
FROM cdr;
© 2022 - 2024 — McMap. All rights reserved.