sql >> Databáze >  >> RDS >> Sqlserver

Ms sql server - přiřazení data k proměnné

Takovou proměnnou nelze přiřadit. Kromě toho, jaký to má smysl? Kde tu proměnnou používáte? Stačí odstranit set @MYYEAR = a měl bys být v pohodě. Pokud opravdu chcete této proměnné přiřadit tuto logiku, udělejte to mimo hlavní SELECT prohlášení.

declare @MYYEAR int
set @MYYEAR = 
(SELECT  
    CASE
        WHEN CONVERT(INTEGER,BTHDAT) = 0 THEN 0
        WHEN  datepart(DY,convert(date, BTHDAT)) > datepart(DY,'2015/07/01') THEN DATEDIFF(YEAR, convert(date, BTHDAT),'2015/07/01') - 1
        ELSE DATEDIFF(YEAR,convert(date, BTHDAT),'2015/07/01')  
    END
FROM SomeTable)

SELECT  
    SERVICE_GROUP, 
    SERVICE_CATEGORY,
    @MYYEAR
FROM
    SomeOtherTable



  1. pomlčka v MySQL pořadí podle klauzule

  2. index dataframe.to_sql jako primární klíč v postgresql

  3. zobrazit seznam přátel uživatele nezobrazuje všechny uživatele

  4. Heroku - jak vytáhnout data z databáze do lokální databáze?