Ćwiczenie t-sql

Odpowiedz Nowy wątek
2018-11-19 17:48
jaaaaaaaaaaaaaaa
0

Próbuję uczyć się języka SQL, aczkolwiek natrafiłem na zadanie z którym nie mogę sobie poradzić. Poniżej przesyłam treść zadania:

Proszę zaprezentować dane z kolumny bez nawiasów. Jeśli liczba w nawiasie ma 2 cyfry, zaprezentować ją jako trzycyfrową (dodać zero na początku)

Przykładowe liczby:
(345)3466454
(23)3464565

Pozostało 580 znaków

2018-11-19 19:13
0

Pokaz co zrobiles i z czym masz problem...

Podpowiedzi:
1) Wyextractuj fragment ktory Cie interesuje np z uzyciem PADINDEX,LEN, albo z REGEXP_SUBSTR
2) Uzyj funkcji FORMAT do sformatowania, albo uzyj IF'ów :)

Na jaki silnik bazodanowy tworzysz?

Pozostało 580 znaków

2018-11-19 20:07
0

Zakładając że wszystkie telefony mają prefix w nawiasie i minimum 2 cyfrowy, bez spacji to:

select

    case when substring(telefon,4,1) = ')' then '0' else '' end + replace(replace(telefon,')',''),'(','') 
from
    tabela
edytowany 1x, ostatnio: Panczo, 2018-11-19 20:09

Pozostało 580 znaków

2018-11-20 14:46
0
DECLARE @test TABLE(number VARCHAR(MAX));
INSERT INTO @test VALUES('(345)3466454'), ('(23)3464565');

SELECT RIGHT('000'+ISNULL(SUBSTRING(number, CHARINDEX('(', number)+1, CHARINDEX(')', number)-CHARINDEX('(', number)-1), ''), 3)+RIGHT(number, LEN(number)-CHARINDEX(')', number))
FROM @test;
edytowany 3x, ostatnio: ipsd, 2018-11-20 15:03

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0