Tutorial SQL

Przykłady, tutorial, gotowe rozwiązania sql.

Kategoria: MS SQL


Użycie Computed Columns


Często tworzymy w tabeli wiele kolumn opisujących bądź w jakiś sposób stanowiących znacznik dla zapytań np czy dany klient jest aktywny w oparciu o datę. Czasami potrzebna jest nam również możliwość wykorzystywania wartości jednej kolumny w innej by to zrobić można posłużyć się tregerami lub zapisać te dane podczas dodawania rekordów ale jest lepszy sposób, pozwala on by tabela sama oznaczała nieaktywych klientów.



Computed Columns kolumny opisowe





By użyć Computed table trzeba je odpowiednio zdefiniować w skrypcie tworzącym tabele.



create table #tDane (
id int identity(1,1), 
name nvarchar(100),
aktiveto date, active as (case when aktiveto is not null then 0 else 1 end)
)

insert into #tDane (name) select 'Mariusz'

insert into #tDane (name,aktiveto) select 'Stefan','2012-01-01'
select * from tDane

go




----------------------------------

1 Mariusz NULL 1

2 Stefan 2012-01-01 0



W/w przykład pozwala na oflagowanie 1 klienta, który ma już datę zakończenia np aktywności w systemie lub rozwiązania umowy.



Wartości z innych kolumn w create table



create table #tDane (
id int identity(1,1),
plec char(1), 
name nvarchar(100),
rejestacja date, mRej as (month(rejestacja)),
opis as (case when plec='f' then 'Pani '+name else 'Pan'+name end)
)

insert into #tDane (plec,name,rejestacja)
select 'f','Monika','2012-01-01'

select * from #tDane
drop table #tDane


go




Kolumny opisowe pozwalają również na stosowanie funkcji wbudowanych jak również użytkownika. Pozwalają jak w przykładzie powyżej na korzystanie z wartości innych kolumn w obrębie jest samej tabeli.




powrót















SQL-KURSY.pl poleca:

Rozpocznij kolonizacje egzoplanety

Książki
ksikaksikaksikaksikaksika

Copyright 2010-2011 Mariusz Kujawski adres mariuszhk@op.pl

obob ob

Valid HTML 4.01 Transitional