☁️ Azure SQL Data Matching Wizard
Connect directly to your Azure SQL database and find matching clusters, no file exports needed
The Azure SQL Data Matching Wizard is a browser-based, step-by-step tool that connects directly to your Azure SQL database and uses Interzoid's AI-powered similarity algorithms to identify and cluster matching records within your tables. Whether you need to deduplicate company names, match individual names, or find address variations, the wizard walks you through the entire process, from connecting to Azure SQL through selecting tables and columns to generating a downloadable match report.
The wizard supports 17 languages and guides you through a cascading connection flow: enter your connection details, then select from your available databases, schemas, and tables using dropdown menus populated directly from your server. No need to manually look up or type database object names.
The wizard works with any Azure SQL or SQL Server instance reachable over the network. That includes Azure SQL Database, Azure SQL Managed Instance, SQL Server running on Azure VMs, Amazon RDS for SQL Server, Google Cloud SQL for SQL Server, and self-managed SQL Server 2016 and later on Windows or Linux.
1Prerequisites
Before using the Azure SQL Data Matching Wizard, you will need:
- An Interzoid API Key: Register for an account and obtain your unique API license key. This key authenticates your requests and tracks usage credits.
- An Azure SQL Database: You will need either a server name (e.g.
myserver.database.windows.net), port, username, and password, or a complete connection string, for a database containing the tables you want to match against. - A Server Firewall Rule: Azure SQL blocks all outside connections by default. The Interzoid matching service must be permitted through the server-level firewall before it can connect, so add a rule under Networking in the Azure portal if a connection attempt times out.
- Available Credits: Each record processed consumes one API credit. Ensure your account has sufficient credits for the number of records in your table.
2Launch the Wizard and Enter Your API Key
Open the Azure SQL Data Matching Wizard in your browser. Before beginning, enter your Interzoid API key in the top-right area of the header bar. Your key will be saved in your browser for future sessions.
- API Key Field: Type or paste your API key into the input field in the header. Click the lock/eye icon to toggle visibility.
- Check Credits: Click the Credits button to verify your current credit balance before starting a job.
- Language Selection: Click the language dropdown in the navigation bar to switch between any of the 17 supported languages. The entire wizard interface will update immediately. You can also set the language via URL parameter:
?lang=frfor French,?lang=jafor Japanese, etc.
Once your API key is entered, click Get Started on the introduction screen to begin the wizard.
3Select a Matching Function
The wizard presents six matching functions. Choose the one that matches your data and use case. Each function card shows a description and the column parameters it requires.
Single-Column Functions
These functions analyze one column of data to find matches:
| Function | Use Case | Column Required |
|---|---|---|
| Company Name Matching | Match variations like "IBM", "I.B.M. Corp", "International Business Machines" | Company Name |
| Individual Name Matching | Match "James Johnston", "Jim Johnston", "J. Johnston" as the same person | Full Name |
| Street Address Matching | Match "400 E Broadway St" with "400 East Broadway Street" | Address |
Combination Functions
These functions use two columns together for higher matching precision:
| Function | Use Case | Columns Required |
|---|---|---|
| Company + Address | Higher precision matching using both company name and street address | Company Name, Address |
| Company + Full Name | Contact deduplication using company and individual name | Company Name, Full Name |
| Address + Full Name | Person-at-address matching using address and individual name | Address, Full Name |
Click on the card for your chosen function, then click Next to proceed.
4Connect to Azure SQL
Enter your connection details and use the cascading dropdown menus to navigate to your data. The wizard connects to Azure SQL in real time and presents the available objects at each level. Azure SQL has no compute warehouse concept, so the connection flow goes directly from credentials to database selection, then to the schema within it.
Connection Flow
The wizard offers two ways to supply your connection details. Use the toggle at the top of the form to switch between them.
Option A: Connection Fields
- Host: The fully qualified server name (e.g.
myserver.database.windows.net), exactly as shown on the Overview page of your database in the Azure portal. - Port: The port your server listens on. Defaults to
1433. - Username & Password: The credentials for a role with read access to your target tables.
- SSL Mode: How the connection negotiates TLS.
verify-fullis the default and is the right choice for Azure SQL, which always presents a valid certificate. Userequireto encrypt without validating the certificate, which is occasionally needed for a self-managed server with a self-signed certificate, anddisableonly for a local SQL Server with no TLS configured.
Option B: Connection String
Paste a complete connection string instead of filling in the fields individually. All three standard forms are accepted, including the ADO.NET string the Azure portal provides under Connection strings:
# URL form
sqlserver://user:password@myserver.database.windows.net?database=mydb
# ADO.NET form, as provided by the Azure portal
Server=tcp:myserver.database.windows.net,1433;Initial Catalog=mydb;User ID=bob;Password=secret;Encrypt=True;TrustServerCertificate=False;
# ODBC form
server=myserver.database.windows.net;database=mydb;uid=bob;pwd=secret
When you use a connection string, the database is taken from the string itself, so the wizard skips the database dropdown and goes straight to schema selection. Separate username and password fields are not needed, since the string already carries them.
The connection string field is masked by default. Use the eye icon to reveal it and the clipboard icon to copy it, which is useful if you want to save the string elsewhere or reuse it in another tool.
@, :, /, ?, or #, they must be percent-encoded in the URL form. The ADO.NET and ODBC forms require no encoding, so pasting the string straight from the Azure portal is the simplest path.
Connecting and Selecting Your Data
- Connect Button: Click Connect to validate your connection details. If the connection succeeds, the wizard loads your available databases into a dropdown menu. If it fails, an error message will indicate what went wrong.
- Database: Select the database containing the table you want to match against. The wizard then loads the available schemas within that database. This step is skipped when you connect with a connection string, which already names the database.
- Schema: Select the schema that contains your target table. If a
dboschema exists, the wizard preselects it. Built-in schemas such assys,INFORMATION_SCHEMA, and the fixed database roles are filtered out of the list.
Saving Your Connection Details
Below the credentials is a Remember these connection details on this browser toggle. It is off by default, and nothing connection-related is saved until you turn it on.
- When enabled: The wizard stores your connection mode, host, port, username, password, SSL mode, and connection string in your browser so you do not have to re-enter them next time.
- When disabled: Any previously saved values are erased immediately, not merely left in place.
- On shared computers: Because the stored values include your password, leave this toggle off.
The wizard only reads from your database, and it is good practice to connect with an account that can do nothing else. On Azure SQL Database, create a contained user directly in the target database:
-- Azure SQL Database: run this in the target database
CREATE USER interzoid_reader WITH PASSWORD = 'strong-password-here';
ALTER ROLE db_datareader ADD MEMBER interzoid_reader;
-- SQL Server or Managed Instance: create a login first
CREATE LOGIN interzoid_reader WITH PASSWORD = 'strong-password-here';
CREATE USER interzoid_reader FOR LOGIN interzoid_reader;
ALTER ROLE db_datareader ADD MEMBER interzoid_reader;
The db_datareader role grants SELECT on every table in that database and nothing more. You can revoke access at any time by dropping the user, or the login where one was created.
A contained user, created with the first form above, exists inside a single database and cannot open master. Because the database dropdown is populated by querying master, a contained user will often see an empty list even though the credentials are perfectly valid.
This is expected rather than an error, and there are two ways past it. Connect with a connection string that names the database, which skips the dropdown entirely, or use a login-based account that can read the server catalog. The wizard also recognizes this specific case: when it cannot open master and a database was already supplied, it offers that database on its own so you can continue.
The same pattern applies across the SQL Server family. Azure SQL Managed Instance, SQL Server on Azure VMs, Amazon RDS for SQL Server, and self-managed instances all behave the way their permissions are configured, so the account you connect with determines what the wizard can see.
disable turns encryption off, require encrypts without validating the server certificate, and both verify-ca and verify-full validate the certificate chain and the server name. The driver has no mode that validates the chain without also validating the name, so verify-ca behaves the same as verify-full rather than silently doing less than you asked.
Once you have selected a database and schema, click Next to proceed to table and column selection.
5Select Table, Columns, and Options
Choose the table to match against and configure which columns to use for matching and which columns to include in the output.
Table Selection
The wizard presents a dropdown of all tables and views available in the schema you selected. Choose the one containing the records you want to match. Once selected, the wizard loads the column names from that table in their natural column order.
Match Columns
For each matching parameter required by your chosen function, select the corresponding column from the dropdown. For example, if you chose "Company Name Matching," select the column that contains company names.
- Single-column functions: Select one column for the matching parameter.
- Combination functions: Select two different columns, one for each parameter. The two columns must be different.
Output Columns
Use the checkboxes to select which columns from the table you want to include in the match report output. At least one column must be selected. The match columns are automatically included even if you don't check them separately, which ensures the data you matched on always appears in the results.
Output Options
- Show Similarity Keys: When enabled (default), each output record includes the generated similarity key as the last column. Records with the same key are matches. Disable this if you want clean output with only the selected data columns.
- Matches Only: When enabled (default), only records that have at least one other matching record are shown. Disable this to see every record in the table after processing, sorted by similarity key.
Click Next when your selections and options are configured.
6Review and Run
The final screen shows a summary of all your selections: matching function, server, SSL mode, database, schema, table, column assignments, and output options. Review these carefully before proceeding.
Click the green Run Match button to start processing. The wizard will:
- Validate your API key and check that your account has sufficient credits for the job.
- Connect to Azure SQL and read the selected columns from your table.
- Process each record through the selected matching algorithm using concurrent workers for performance.
- Generate the match report with records sorted and grouped into clusters of matching entries.
A progress indicator is shown while the job runs. Processing time depends on the number of records. Most tables complete within seconds, while very large tables (up to 500,000 records) may take a minute or more.
7Interpret the Results
The match report appears in the results panel at the bottom of the screen. Records are organized into clusters, groups of records that the AI has determined to be matches. Each cluster is separated by a blank line for readability.
Example Output
For a company name match on an Azure SQL table with columns Company, Address, City, State and similarity keys enabled:
IBM Corporation,1 New Orchard Rd,Armonk,NY,d477E1d7sG6dja3hDNsk9P
I.B.M. Corp,1 New Orchard Road,Armonk,NY,d477E1d7sG6dja3hDNsk9P
Microsoft Inc.,1 Microsoft Way,Redmond,WA,k8Rp2mNx4wQjL9vB3cYh7T
Microsoft Corporation,One Microsoft Way,Redmond,WA,k8Rp2mNx4wQjL9vB3cYh7T
MSFT Corp,1 Microsoft Way,Redmond,WA,k8Rp2mNx4wQjL9vB3cYh7T
In this example, the first cluster contains two records identified as variations of IBM, and the second cluster contains three records identified as variations of Microsoft. The last column in each row is the similarity key. All records sharing the same key are considered matches.
8Save Your Results
Click the Save Results button above the results panel to download the match report as a CSV file. On supported browsers, a save dialog will appear allowing you to choose the file name and location. On other browsers, the file will download automatically.
The saved file is clean, delimited text that can be imported directly into spreadsheets, databases, or other data processing tools for further analysis.
The Azure SQL Data Matching Wizard makes it easy to discover hidden duplicates and matching records directly within your Azure SQL database. It delivers clean, actionable match reports that help you improve the quality, consistency, and value of your data assets, without ever exporting a file. If you have any questions or need assistance, don't hesitate to reach out to our support team.