sql >> Databasteknik >  >> RDS >> Sqlserver

Fel :Kolumntypen DOB står i konflikt med typen av andra kolumner som anges i UNPIVOT-listan

Eftersom resultatet kommer att ta tillbaka alla kolumner i rader, bygga en ny härledd kolumn med alla värden, måste du se till att typerna passar ihop.

Du kan slå in alla dina kolumner i CAST

SELECT
  ColumnName,
  value
FROM (SELECT
  CAST(id AS NVARCHAR(MAX)) [ID],
  CAST(firstname AS NVARCHAR(MAX)) [First Name],
  CAST(lastname AS NVARCHAR(MAX)) [Last Name],
  CAST(dob AS NVARCHAR(MAX)) [DOB],
  CAST(sex AS NVARCHAR(MAX)) [Gender]
FROM client
WHERE id = '11') d
UNPIVOT
(
Value FOR
ColumnName IN ([ID], [First Name], [Last Name], [DOB], [Gender])
) unpiv;

DOB kommer att konverteras till standardinställningen för din maskin. Använder CONVERT du kan tvinga fram ett visst datum-/tidsformat.




  1. php pdo emulate_prepares false stringify_fetches false int still string

  2. Vad är den maximala storleken på en MySQL-databas i version 5 och uppåt?

  3. Returnera booleskt värde som TRUE eller FALSE i Select (PostgreSQL/pgAdmin)

  4. Varför stänger inte MySQLdb Connection-kontexthanteraren markören?