SSMS
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> SSMS

Làm thế nào để truy xuất dữ liệu từ SQL Server dựa trên ví dụ dưới đây?

Có thể bạn có thể sử dụng một giải pháp như dưới đây Xem bản trình diễn đang hoạt động

declare @d date='2018-Jun-03'

; with Indexer as 
(
    select 
        *, 
        rn= row_number() over(partition by CustName order by RecordedTime),
        rn2=row_number() over(partition by CustName order by RecordedTime desc)
    from records
)
,GetValidCustomerRecords as
(
    select 
        CustName,
        Country,
        RecordedTime,
        Audit   = case when cast(RecordedTime as date)[email protected] and rn=1 then 'add' else 'change' end,
        History = case 
                    when cast(RecordedTime as date)[email protected] and rn=1 
                    then 'new' 
                    when cast(RecordedTime as date)<@d and rn=1 
                    then 'before'
                    else 'current' end
    from Indexer i 
    where CustName in
    (
    select 
        distinct CustName 
    from records
    where cast(RecordedTime as date)[email protected]
    ) 
    and (rn=1 or rn2=1) and cast(RecordedTime as date)<[email protected]
)

select * from GetValidCustomerRecords
order by CustName, RecordedTime



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Làm cách nào để bạn gửi nhiều lệnh tới Sql PowerShell từ Dòng lệnh Windows?

  2. Microsoft SQL Server sao chép kết quả dán vào excel không hoạt động

  3. Cách xoay vòng mà không cần biết các cột cố định trong T-SQL

  4. SSMS cho phép các bản ghi trùng lặp trong một bảng, nhưng không cho phép các bản cập nhật tiếp theo

  5. Đối tượng SSMS SMO:Nhận kết quả truy vấn