首页 > 解决方案 > 想要获取 2003 年至今的值

问题描述

DECLARE @year VARCHAR(100)

SET @year = '%-2003-%'

SELECT 
    DISTINCT 'AR Invoice', b.user_transaction_type_code as ar_transaction_type_code, b.name_l as ar_name_l, min(transaction_nr) as ar_min_tran_nr, max(transaction_nr) as ar_max_tran_nr, MIN(transaction_text) as min_ar_transaction_text, MAX(transaction_text) as max_ar_transaction_text
FROM
    ar_invoice a, user_transaction_type b
WHERE
    a.user_transaction_type_id = b.user_transaction_type_id AND
    transaction_text like @year
GROUP BY
    b.user_transaction_type_code, b.name_l

我想获得从 2003 年到今天的值吗?有人能告诉我怎么做吗?

标签: visual-studio-2013sql-server-2014ssrs-2012

解决方案


如果要获取从 2003 年到今天的值,可以BETWEEN '2003-01-01' AND GETDATE()在 WHERE 子句中使用选项。

SELECT  DISTINCT 'AR Invoice', b.user_transaction_type_code AS ar_transaction_type_code, 
        b.name_l AS ar_name_l, min(transaction_nr) AS ar_min_tran_nr, max(transaction_nr) AS ar_max_tran_nr, 
        MIN(transaction_text) AS min_ar_transaction_text, MAX(transaction_text) AS max_ar_transaction_text
FROM ar_invoice a
INNER JOIN user_transaction_type b ON b.user_transaction_type_id = a.user_transaction_type_id
WHERE transaction_text BETWEEN '2003-01-01' AND GETDATE()
GROUP BY b.user_transaction_type_code, b.name_l

推荐阅读