SQL CAST CDN.TwrKarty.Twr_Nazwa

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

farbex
Posty: 111
Rejestracja: 15 sty 2010, 15:17
Rola: Administrator CDN XL
Lokalizacja: Ciechanów
Kontakt:

SQL CAST CDN.TwrKarty.Twr_Nazwa

Post autor: farbex »

Witam.

Mam takie polecenie:

Kod: Zaznacz cały

CAST(Twr_Nazwa as varchar(15)) 'NAZWA1'
Które tak jak by przycina Twr_Nazwa do pierwszych piętnastu znaków z tego pola.
Co zrobić żeby w następną kolumnę NAZWA2 (Varchar(15) były wstawiane znaki z pola Twr_Nazwa ale po 15 znaku z kolei? Czyli takie uzupełnienie dalszego ciągu nazwy.

Z góry dziękuję za pomoc.
Pozdrawiam.
Przemysław Klimkowski
farbex.com.pl

AdamSp
Posty: 51
Rejestracja: 22 kwie 2008, 09:01
Rola: Administrator CDN XL
Wersja: 9.6
Lokalizacja: Katowice

Re: SQL CAST CDN.TwrKarty.Twr_Nazwa

Post autor: AdamSp »

substring(twr_nazwa, 1, 15 )

substring(twr_nazwa, 16, 255)

Pozdrawiam

farbex
Posty: 111
Rejestracja: 15 sty 2010, 15:17
Rola: Administrator CDN XL
Lokalizacja: Ciechanów
Kontakt:

Re: SQL CAST CDN.TwrKarty.Twr_Nazwa

Post autor: farbex »

Dzięki tylko jak to zastosować do tego:

Kod: Zaznacz cały

use [VERISCAN7007]
go
DROP TABLE kodpas -- usuwamy tabelę o nazwie kodpas
go

CREATE TABLE kodpas --zakładamy tabelę o nazwie kodpas
(
NAZWA1 VARCHAR(15) null,
NAZWA2 VARCHAR(15) null,
KODPAS VARCHAR(13) null,
CENA INTEGER null,
SYMTOW VARCHAR(11) null,
ZNACZNIK TINYINT null,
OPAK TINYINT null,
ALIAS TINYINT null
)
go

INSERT INTO kodpas -- kopiujemy dane do tabeli kodpas
(
NAZWA1,
NAZWA2,
KODPAS,
CENA, -- nazwy kolumn w tabeli kodoas
SYMTOW,
ZNACZNIK,
OPAK,
ALIAS
)

SELECT NAZWA1,NAZWA2,KODPAS,CENA,SYMTOW,ZNACZNIK,OPAK,ALIAS -- z pobranych danych
FROM
(
SELECT
CAST(Twr_Nazwa as varchar(15)) 'NAZWA1', -- CAST - przycinanie pól
CAST(Twr_Nazwa as varchar(15)) 'NAZWA2', -- tutaj bym chciał kolejne 15 znaków
substring(twr_nazwa, 16, 30)
CAST(Twr_Ean as varchar(13)) 'KODPAS',
TwC_Wartosc*100 'CENA',
cast(Twr_Kod as varchar(11)) 'SYMTOW',
0 'ZNACZNIK',
1 'OPAK',
0 'ALIAS'

FROM
[CDNXL_Farbex_nowy].CDN.TwrKarty
JOIN [CDNXL_Farbex_nowy].CDN.TwrCeny ON Twr_GIDNumer=TwC_TwrNumer -- warunek łączenia
WHERE TwC_TwrLp=10 --podaj numer cennika

UNION

SELECT -- z pobranych danych
CAST(Twr_Nazwa AS VARCHAR(15)) 'NAZWA1',-- CAST - przycinanie pól
CAST(Twr_Nazwa AS VARCHAR(15)) 'NAZWA2',-- tutaj bym chciał kolejne 15 znaków
CAST(TwJ_Ean AS VARCHAR(13)) 'KODPAS',
     Twc_Wartosc*100 'CENA',
CAST(Twr_Kod AS VARCHAR(11)) 'SYMTOW',
0 'ZNACZNIK',
1 'OPAK',
1 'ALIAS'
FROM
[CDNXL_Farbex_nowy].CDN.TwrKarty
JOIN [CDNXL_Farbex_nowy].CDN.TwrCeny ON Twr_GIDNumer=TwC_TwrNumer -- warunek łączenia
JOIN [CDNXL_Farbex_nowy].CDN.TwrJm ON Twr_GIDNumer=TwJ_TwrNumer -- warunek łączenia cd.
WHERE TwC_TwrLp=10 --podaj numer cennika
)PrzemysławKlimkowski
go
Pozdrawiam.
Przemysław Klimkowski
farbex.com.pl

farbex
Posty: 111
Rejestracja: 15 sty 2010, 15:17
Rola: Administrator CDN XL
Lokalizacja: Ciechanów
Kontakt:

Re: SQL CAST CDN.TwrKarty.Twr_Nazwa

Post autor: farbex »

W postaci selekta działa super:

Kod: Zaznacz cały

USE CDNXL_Farbex_testPK2
SELECT substring(twr_nazwa, 1, 15) as 'NAZWA1',substring(twr_nazwa, 16, 30) as 'NAZWA2'
FROM CDN.TwrKarty
Ale jak to wpisać to powyższej kwerendy?
Przemysław Klimkowski
farbex.com.pl

ODPOWIEDZ