Loading data........
Tin nhanh :
Xem Tivi Online

Tổng hợp các kênh giải trí (Đang cập nhật chức năng..)

New Update

Truyền hình SCTV

SCTV14

SCTV15

SCTV16

SCTV17

SCTV18 HD

Vietnam Channels

VTV1

VTV2

VTV3

VTV4

VTV6

VTV9

VTC Online

VTC1

VTC2

VTC3

VTC4

VTC5

VTC6

VTC Online

VTC7

VTC8

VTC9

VTC10

VTC11

VTC12

Truyền hình tp HCM

HTV1

HTV2

HTV3

HTV4

HTV7

HTV9

Radio Channels

VOV1

VOV2

VOV3

VOV4

VOV5

VOV GT-HN

Home » , » Basic SQL - Hàm trả về 1 bảng trong SQL

Basic SQL - Hàm trả về 1 bảng trong SQL


Ví dụ 1: Tạo 1 hàm SELECT lấy các mẫu tin dữ liệu từ bảng danh sách khách hàng (table Customers)

CREATE FUNCTION SelectCustomers()
RETURNS TABLE
AS
    RETURN (SELECT * FROM Customers)

Câu lệnh thực thi hàm

SELECT * FROM dbo.SelectCustomers()

Ví dụ 2: Tạo 1 hàm lấy danh sách số ngày từ 1 ngày bất kỳ đến trước ngày hiện tại


Ví dụ ngày hiện tại là "Ngày 21 tháng 2 năm 2012", ngày trước đó sẽ là ngày 20/2/2012. Giờ ta lấy 1 ngày bất kỳ, giả sử là ngày 8/2/2012. Bây giờ ta viết 1 hàm trong SQL để lấy ra danh sách số ngày từ mùng 8/2/2012 tới ngày 20/2/2012 là có bao nhiêu ngày. Câu lệnh sẽ là:

CREATE FUNCTION [dbo].[getDayListToYesterday]
(    
      @dateInput VARCHAR(20)
)
RETURNS @tblDays TABLE
      (
            TheDay datetime
      )
as   
begin
      DECLARE @firstDay datetime
      SET @firstDay = @dateInput
      WHILE (@firstDay < dateadd(dd,-1,getdate() ))
      BEGIN
            INSERT INTO @tblDays (TheDay) VALUES(@firstDay)
            SET @firstDay = dateadd(dd, 1,@firstDay)
      END
      RETURN 
END

Câu lệnh truy vấn:

---------date format: mm/dd/yyyy --------------------------
 SELECT COUNT(*) FROM  dbo.getDayListToYesterday('2/8/2012')
-----------------------------------------------------------
 SELECT * FROM  dbo.getDayListToYesterday('2/8/2012')

--> Kết quả cuối cùng sẽ trả về danh sách 13 ngày
Like và chia sẻ với bạn bè :

0 nhận xét:

Speak up your mind

Tell us what you're thinking... !

 
Proudly powered by Blogger
Copyright © 2009-. The Color Of Life - All Rights Reserved