ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Ejemplo: Resolver códigos de dominio para valores de descripción con SQL

Consultas de la columna XML incluye un ejemplo de cómo extraer los pares de código y descripción desde un dominio de valor codificado como un conjunto de resultados. Además de la investigación de esquemas simple, una aplicación práctica de esta capacidad es resolver los códigos de un dataset.

En muchos casos, los códigos en un dominio de valor codificado se asignan arbitrariamente; por ejemplo, en un dominio de valor codificado de materiales de tubería, los valores de descripción de dominio pueden ser Cobre, PVC y Acero, pero los códigos de dominio pueden ser 1, 2 y 3, que no son muy utilizados por los usuarios que ejecutan una consulta SQL en una tabla que utiliza el dominio.

Los siguientes ejemplos muestran cómo consultar un dominio de valor codificado en una subconsulta, y después vincular esos resultados con los resultados de la consulta de una tabla que utiliza el dominio.

En el primer ejemplo, la columna de zonificación de la tabla de parcelas (que pertenece al usuario molly) utiliza el dominio ZoningCodes. La tabla de parcelas se vincula con el dominio de valor codificado ZoningCodes para obtener una lista de las descripciones y los códigos de dominio.

--SQL Server

SELECT OBJECTID AS "Object ID",Value AS "Zoning Code"
FROM molly.parcels LEFT OUTER JOIN
 (SELECT
   codedValue.value('Code[1]','nvarchar(max)') AS "Code",
   codedValue.value('Name[1]', 'nvarchar(max)') AS "Value"
  FROM GDB_ITEMS AS items INNER JOIN GDB_ITEMTYPES AS itemtypes 
  ON items.Type = itemtypes.UUID
  CROSS APPLY items.Definition.nodes
   ('/GPCodedValueDomain2/CodedValues/CodedValue') AS CodedValues(codedValue)
  WHERE itemtypes.Name = 'Coded Value Domain' 
   AND items.Name = 'ZoningCodes') AS CodedValues
 ON molly.parcels.zoning = CodedValues.Code

En este ejemplo, la columna de materiales de la tabla distribmains utiliza el dominio material. La tabla distribmains se vincula con el dominio de valor codificado material para obtener una lista de las descripciones y los códigos de dominio.

--Oracle

SELECT OBJECTID AS "Object ID", Value AS "Material"
FROM DISTRIBMAINS LEFT OUTER JOIN
 (SELECT
   EXTRACTVALUE(CodedValues.COLUMN_VALUE, 'CodedValue/Code') AS Code,
   EXTRACTVALUE(CodedValues.COLUMN_VALUE, 'CodedValue/Name') AS Value
  FROM SDE.GDB_ITEMS_VW items INNER JOIN SDE.GDB_ITEMTYPES itemtypes 
  ON items.Type = itemtypes.UUID,
  TABLE(XMLSEQUENCE(XMLType(Definition).Extract
   ('/GPCodedValueDomain2/CodedValues/CodedValue'))) CodedValues
  WHERE itemtypes.Name = 'Coded Value Domain' 
   AND items.Name = 'Material') CodedValues
 ON DISTRIBMAINS.MATERIAL = CodedValues.Code;

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2021 Esri. | Privacidad | Legal