Prompted Query to find machines based on MAC address

One of my customers asked me to build this example query and I figured I would share with everyone, not just one company.  it can be handy when you are doing OS Deployment testing and you need to look up a machine based on its MAC address to delete it so it becomes an “unknown computer” again.  Keep in mind that in the ConfigMgr database, the MAC address is in the form of ZZ:ZZ:ZZ:ZZ:ZZ:ZZ.


select distinct SMS_R_System.Name, SMS_R_System.MACAddresses from  SMS_R_System where SMS_R_System.MACAddresses = ##PRM:SMS_R_System.MACAddresses## order by SMS_R_System.MACAddresses


“This software (or sample code) is not supported under any Microsoft standard support program or service. The software is provided AS IS without warranty of any kind. Microsoft further disclaims all implied warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the software and documentation remains with you. In no event shall Microsoft, its authors, or anyone else involved in the creation, production, or delivery of the software be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the software or documentation, even if Microsoft has been advised of the possibility of such damages.”

Comments (13)

  1. Good point Jeff.  In the case of my customer they wanted to do the lookup of MAC that may not be duplicated.  They also wanted to delete records, which can not be done so easily from a report.

  2. AbiNair says:

    Helpful,Thanks & Cheers Mike.

  3. laurentdew says:

    Thank you very much Mike !

  4. Jeff25 says:

    Did you know there is something already simular? Computers with duplicate MAC addresses report.

  5. Daniel says:

    Thanks for this tip!

  6. Naomi says:

    Thanks very much for this query.  It has come in very handy!!

  7. Icke says:


  8. tester says:

    Create a collection with Membership rule e.g.
    Name: MAC Type: Query

    Resouce class: System Resource

    In Edit Query statement ->General->show query language put:
    select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.MACAddresses = "00:12:34:56:78:55"

    NOTE: Change the MAC address that you need to find.

    In Edit Query statement ->Criteria:
    Simple value
    is equal to

    Hope it helps!

  9. Simon says:

    Really like this Prompted Query – much better than the change Criteria versions, very quick for the desktop guys – Thank You.

  10. Ravi says:

    Very invaluable to find machines built using a reusable Ethernet dongle for the new ultrabooks. Much easier than the duplicate mac reports

  11. K9 says:

    Not working… I keep getting: This query has a syntax error. Are you sure you want to save it?

  12. Chris H says:

    Created this prompted query for SCCM 2012r2. Remember the format SCCM searches MAC address XX:XX:XX:XX:XX:XX

    select SMS_G_System_PC_BIOS.SerialNumber, SMS_R_System.Name, SMS_R_System.LastLogonUserName, SMS_G_System_COMPUTER_SYSTEM.Manufacturer, SMS_G_System_COMPUTER_SYSTEM.Model from SMS_R_System inner join SMS_G_System_PC_BIOS on SMS_G_System_PC_BIOS.ResourceID = SMS_R_System.ResourceId inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_R_System.MACAddresses = ##PRM:SMS_R_System.MACAddresses##