MICROSOFT SQL SERVER: tutorial and sample query

Vedremo in questo articolo qualche query di esempio: query per il confronto tra date, query che coinvolgono colonne con contenuto XML, ...

 

 

 

 

Query Delete By Date

Vediamo come fare una delete per eliminare tutti i record antecedenti ad una certa data fissa:

 

USE [MyDB]
GO

DELETE FROM [dbo].[MyTable]
      WHERE CreationDate < CAST('20190201 00:00:00.000' AS DATETIME)
GO

 

Query Update Date

Vediamo come fare una query di update per settare tutte le date di una tabella ad un valore fisso:

 

USE [MyDB]
GO

UPDATE [dbo].[MyTable]
   SET [UpdateDate] = CAST('20180101 00:00:00.000' AS DATETIME)    

GO

 

Query On XML Column

Vediamo questa semplice query:

 

select *
from MyTable
where xmlColumn like '%<myNode>2</myNode>%'

 

Se provate ad eseguire questa query sicuramente avrete il seguente errore:

 

Argument data type xml is invalid for argument 1 of like function

 

Questo perché se nella colonna xmlColumn ci sta del testo in formato XML la precedente sintassi genera un errore.

L'unico modo per eseguire una query di questo tipo è il seguente:

 

select *
from MyTable
where CAST(xmlColumn AS nvarchar(max)) LIKE N'%<myNode>8</myNode>%'

 

Ovvero la colonna deve essere prima convertita in testo e poi si esegue la query.

Buon lavoro!

Joomla SEF URLs by Artio