Funzioni di confronto per i modelli di Azure Resource ManagerComparison functions for Azure Resource Manager templates

Resource Manager include numerose funzioni per l'esecuzione di confronti nei modelli.Resource Manager provides several functions for making comparisons in your templates.

equalsequals

equals(arg1, arg2)

Controlla se due valori sono uguali tra loro.Checks whether two values equal each other.

ParametriParameters

ParametroParameter ObbligatorioRequired TipoType DescrizioneDescription
arg1arg1 Yes int, stringa, matrice o oggettoint, string, array, or object Il primo valore per verificare l'uguaglianza.The first value to check for equality.
arg2arg2 Yes int, stringa, matrice o oggettoint, string, array, or object Il secondo valore per verificare l'uguaglianza.The second value to check for equality.

Valore restituitoReturn value

Restituisce True se i valori sono uguali; in caso contrario, restituisce False.Returns True if the values are equal; otherwise, False.

OsservazioniRemarks

La funzione uguale a viene spesso usata con l'elemento condition per verificare se la risorsa viene distribuita.The equals function is often used with the condition element to test whether a resource is deployed.

{
    "condition": "[equals(parameters('newOrExisting'),'new')]",
    "type": "Microsoft.Storage/storageAccounts",
    "name": "[variables('storageAccountName')]",
    "apiVersion": "2017-06-01",
    "location": "[resourceGroup().location]",
    "sku": {
        "name": "[variables('storageAccountType')]"
    },
    "kind": "Storage",
    "properties": {}
}

EsempioExample

Il modello di esempio seguente controlla tipi diversi di valori per verificarne l'uguaglianza.The following example template checks different types of values for equality. Tutti i valori predefiniti restituiscono True.All the default values return True.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "firstInt": {
            "type": "int",
            "defaultValue": 1
        },
        "secondInt": {
            "type": "int",
            "defaultValue": 1
        },
        "firstString": {
            "type": "string",
            "defaultValue": "a"
        },
        "secondString": {
            "type": "string",
            "defaultValue": "a"
        },
        "firstArray": {
            "type": "array",
            "defaultValue": ["a", "b"]
        },
        "secondArray": {
            "type": "array",
            "defaultValue": ["a", "b"]
        },
        "firstObject": {
            "type": "object",
            "defaultValue": {"a": "b"}
        },
        "secondObject": {
            "type": "object",
            "defaultValue": {"a": "b"}
        }
    },
    "resources": [
    ],
    "outputs": {
        "checkInts": {
            "type": "bool",
            "value": "[equals(parameters('firstInt'), parameters('secondInt') )]"
        },
        "checkStrings": {
            "type": "bool",
            "value": "[equals(parameters('firstString'), parameters('secondString'))]"
        },
        "checkArrays": {
            "type": "bool",
            "value": "[equals(parameters('firstArray'), parameters('secondArray'))]"
        },
        "checkObjects": {
            "type": "bool",
            "value": "[equals(parameters('firstObject'), parameters('secondObject'))]"
        }
    }
}

L'output dell'esempio precedente con i valori predefiniti è il seguente:The output from the preceding example with the default values is:

NomeName TipoType ValoreValue
checkIntscheckInts BooleanoBool True True
checkStringscheckStrings BooleanoBool True True
checkArrayscheckArrays BooleanoBool True True
checkObjectscheckObjects BooleanoBool True True

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/equals.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/equals.json 

Il modello di esempio seguente usa not con equals.The following example template uses not with equals.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "resources": [
    ],
    "outputs": {
        "checkNotEquals": {
            "type": "bool",
            "value": "[not(equals(1, 2))]"
        }
    }
}

L'output dell'esempio precedente è:The output from the preceding example is:

NomeName TipoType ValoreValue
checkNotEqualscheckNotEquals BooleanoBool True True

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/not-equals.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/not-equals.json 

greatergreater

greater(arg1, arg2)

Controlla se il primo valore è maggiore del secondo.Checks whether the first value is greater than the second value.

ParametriParameters

ParametroParameter ObbligatorioRequired TipoType DescrizioneDescription
arg1arg1 Yes int o stringaint or string Il primo valore per il confronto del maggiore.The first value for the greater comparison.
arg2arg2 Yes int o stringaint or string Il secondo valore per il confronto del maggiore.The second value for the greater comparison.

Valore restituitoReturn value

Restituisce True se il primo valore è maggiore del secondo; in caso contrario, restituisce False.Returns True if the first value is greater than the second value; otherwise, False.

EsempioExample

Il modello di esempio segiente controlla se un valore è maggiore dell'altro.The following example template checks whether the one value is greater than the other.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "firstInt": {
            "type": "int",
            "defaultValue": 1
        },
        "secondInt": {
            "type": "int",
            "defaultValue": 2
        },
        "firstString": {
            "type": "string",
            "defaultValue": "A"
        },
        "secondString": {
            "type": "string",
            "defaultValue": "a"
        }
    },
    "resources": [
    ],
    "outputs": {
        "checkInts": {
            "type": "bool",
            "value": "[greater(parameters('firstInt'), parameters('secondInt') )]"
        },
        "checkStrings": {
            "type": "bool",
            "value": "[greater(parameters('firstString'), parameters('secondString'))]"
        }
    }
}

L'output dell'esempio precedente con i valori predefiniti è il seguente:The output from the preceding example with the default values is:

NomeName TipoType ValoreValue
checkIntscheckInts BooleanoBool FalseFalse
checkStringscheckStrings BooleanoBool True True

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/greater.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/greater.json 

greaterOrEqualsgreaterOrEquals

greaterOrEquals(arg1, arg2)

Controlla se il primo valore è maggiore o uguale al secondo valore.Checks whether the first value is greater than or equal to the second value.

ParametriParameters

ParametroParameter ObbligatorioRequired TipoType DescrizioneDescription
arg1arg1 Yes int o stringaint or string Il primo valore per il confronto del maggiore e dell'uguaglianza.The first value for the greater or equal comparison.
arg2arg2 Yes int o stringaint or string Il secondo valore per il confronto del maggiore e dell'uguaglianza.The second value for the greater or equal comparison.

Valore restituitoReturn value

Restituisce True se il primo valore è maggiore o uguale al secondo; in caso contrario, restituisce False.Returns True if the first value is greater than or equal to the second value; otherwise, False.

EsempioExample

Il modello di esempio seguente controlla se un valore è maggiore o uguale all'altro.The following example template checks whether the one value is greater than or equal to the other.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "firstInt": {
            "type": "int",
            "defaultValue": 1
        },
        "secondInt": {
            "type": "int",
            "defaultValue": 2
        },
        "firstString": {
            "type": "string",
            "defaultValue": "A"
        },
        "secondString": {
            "type": "string",
            "defaultValue": "a"
        }
    },
    "resources": [
    ],
    "outputs": {
        "checkInts": {
            "type": "bool",
            "value": "[greaterOrEquals(parameters('firstInt'), parameters('secondInt') )]"
        },
        "checkStrings": {
            "type": "bool",
            "value": "[greaterOrEquals(parameters('firstString'), parameters('secondString'))]"
        }
    }
}

L'output dell'esempio precedente con i valori predefiniti è il seguente:The output from the preceding example with the default values is:

NomeName TipoType ValoreValue
checkIntscheckInts BooleanoBool FalseFalse
checkStringscheckStrings BooleanoBool True True

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/greaterorequals.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/greaterorequals.json 

lessless

less(arg1, arg2)

Controlla se il primo valore è minore del secondo.Checks whether the first value is less than the second value.

ParametriParameters

ParametroParameter ObbligatorioRequired TipoType DescrizioneDescription
arg1arg1 Yes int o stringaint or string Il primo valore per il confronto del minore.The first value for the less comparison.
arg2arg2 Yes int o stringaint or string Il secondo valore per il confronto del minore.The second value for the less comparison.

Valore restituitoReturn value

Restituisce True se il primo valore è inferiore al secondo; in caso contrario, restituisce False.Returns True if the first value is less than the second value; otherwise, False.

EsempioExample

Il modello di esempio seguente controlla se un valore è minore dell'altro.The following example template checks whether the one value is less than the other.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "firstInt": {
            "type": "int",
            "defaultValue": 1
        },
        "secondInt": {
            "type": "int",
            "defaultValue": 2
        },
        "firstString": {
            "type": "string",
            "defaultValue": "A"
        },
        "secondString": {
            "type": "string",
            "defaultValue": "a"
        }
    },
    "resources": [
    ],
    "outputs": {
        "checkInts": {
            "type": "bool",
            "value": "[less(parameters('firstInt'), parameters('secondInt') )]"
        },
        "checkStrings": {
            "type": "bool",
            "value": "[less(parameters('firstString'), parameters('secondString'))]"
        }
    }
}

L'output dell'esempio precedente con i valori predefiniti è il seguente:The output from the preceding example with the default values is:

NomeName TipoType ValoreValue
checkIntscheckInts BooleanoBool True True
checkStringscheckStrings BooleanoBool FalseFalse

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/less.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/less.json 

lessOrEqualslessOrEquals

lessOrEquals(arg1, arg2)

Controlla se il primo valore è minore o uguale al secondo valore.Checks whether the first value is less than or equal to the second value.

ParametriParameters

ParametroParameter ObbligatorioRequired TipoType DescrizioneDescription
arg1arg1 Yes int o stringaint or string Il primo valore per il confronto del minore o dell'uguaglianza.The first value for the less or equals comparison.
arg2arg2 Yes int o stringaint or string Il secondo valore per il confronto del minore o dell'uguaglianza.The second value for the less or equals comparison.

Valore restituitoReturn value

Restituisce True se il primo valore è minore o uguale al secondo; in caso contrario, restituisce False.Returns True if the first value is less than or equal to the second value; otherwise, False.

EsempioExample

Il modello di esempio seguente controlla se un valore è minore o uguale all'altro.The following example template checks whether the one value is less than or equal to the other.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "firstInt": {
            "type": "int",
            "defaultValue": 1
        },
        "secondInt": {
            "type": "int",
            "defaultValue": 2
        },
        "firstString": {
            "type": "string",
            "defaultValue": "A"
        },
        "secondString": {
            "type": "string",
            "defaultValue": "a"
        }
    },
    "resources": [
    ],
    "outputs": {
        "checkInts": {
            "type": "bool",
            "value": "[lessOrEquals(parameters('firstInt'), parameters('secondInt') )]"
        },
        "checkStrings": {
            "type": "bool",
            "value": "[lessOrEquals(parameters('firstString'), parameters('secondString'))]"
        }
    }
}

L'output dell'esempio precedente con i valori predefiniti è il seguente:The output from the preceding example with the default values is:

NomeName TipoType ValoreValue
checkIntscheckInts BooleanoBool True True
checkStringscheckStrings BooleanoBool FalseFalse

Per distribuire questo modello di esempio con l'interfaccia della riga di comando di Azure, usare:To deploy this example template with Azure CLI, use:

az group deployment create -g functionexamplegroup --template-uri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/lessorequals.json

Per distribuire questo modello di esempio con PowerShell, usare:To deploy this example template with PowerShell, use:

New-AzureRmResourceGroupDeployment -ResourceGroupName functionexamplegroup -TemplateUri https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/azure-resource-manager/functions/lessorequals.json 

Passaggi successiviNext steps