Hi @Cooling, Steve , you cant do it the same way you do cross-db queries on full SQL server or MI (no simple OtherDb.dbo.Table 3/4-part name from Azure SQL Database), but yeah you can query data in Azure SQL Managed Instance from SQL Database using external tables/elastic query.
Azure SQL Database doesnt support classic cross-database or cross-instance queries with 3- or 4-part names. For this kind of scenario Microsofts guidance is using data virtualization with external data sources and external tables, basically elastic query. For your specific direction where source is database on Azure SQL Managed Instance and destination is database on Azure SQL Database (where the query runs), you set it up on the Azure SQL DB side like this: first you create a database scoped credential that can log into the Managed Instance (SQL auth user with permissions on source DB), then you create an external data source that points to MI fqdn, port, and source database using that credential. Finally you create an external table whose schema matches the table on the managed instance. Once thats done you can just select from that external table from within azure sql db and even join it with your local tables, basically giving you cross-database behavior between azure sql db and MI, just not via the old 3-part name syntax. Important thing tho: this isnt a full distributed transaction, theres no 2PC between sql db and MI, and youre going over the network so treat it as data-virtualization / read scenario and be careful with huge scans or heavy joins across the boundary.
For the opposite direction where query runs on Managed Instance and reads from Azure SQL Database, current recommendation is using linked servers on the MI side rather than this external table pattern, but in your case where Azure SQL DB is querying MI the external table approach is the supported way.
So the answer is; no native cross-database query from Azure SQL Database to MI with three-part names, but yes you can achieve what you want by defining an external data source and external tables in Azure SQL Database that point to your Managed Instance.