Level: Beginners
Edit: Sep 2019
I am still astounded by the number of people I meet that have never heard of Power Query and Power Pivot. The good news is there are lots of people out there in for a pleasant surprise. I think Power BI will solve the “lack of awareness of Power Query” problem over the coming months and years. Power BI is much more visible as can been seen in this Google Trends chart that I first created in Dec 2014.
I have written a blog titled “What is Power Pivot” before and I refer people to that page all the time – this helps me quickly give people a detailed summary of what they need to know. Today I am writing about Power Query for the same reason – to have something that I can point people towards when they are just starting out.
So What is Power Query?
Power Query is an Extract, Transform and Load tool (ETL) that helps Power BI and Excel users connect to data, transform the shape of the data as required and then load the data for further use, typically into Power BI, Excel, CSV etc. ETL tools are not new – there are many enterprise strength tools in the marketplace that are used by IT professionals. What makes Power Query such a ground-breaking tool is it is the first tool built specifically for business users.
Who can benefit from Power Query?
If one or more of the following scenarios applies to you, then Power Query is a great tool to make your life better.
- You spend hours and hours of repetitive work combining data from various source into a single data table before you can start the real work.
- You have data in a file but it is the wrong shape for the task at hand. You need to spend time “reshaping” the data before you can use it.
- You write lots of VLOOKUP formulas in Excel over multiple tables of data to “join” the data together.
- You manually have to “cleanse” your data every month removing data and errors that you already know about but you can’t permanently solve back at the source.
- You need to get data from web pages into Power BI so you can analyse the data. You cut and paste the data and spend hours reformatting it to remove the noise from the data.
What Can Power Query Do?
Power Query can be used for the following (and probably many more things too).
- A data loading tool
- A data cleansing tool (remove unwanted columns, rows, characters etc)
- A data reshaping tool including a very powerful “unpivot data” function (example shown below)
- A tool to combine data from multiple worksheets or workbooks into a single file/table
- A tool to join data from different sources into 1 coherent data set or table.
- An auditing tool – compare lists of data and find the similarities and differences.
- A website data scraping tool – easily load tabular data from a web page into Power BI or Excel .
- A data creation tool (e.g. it can create a calendar table for Power BI). Read my blog posts about how create a regular Calendar table here, or a 445 Calendar table here.
What Makes Power Query So Great?
Power Query is great for many reasons including:
- It has a simple User Interface that any business user can learn. Note the simple menu driven features in the image below.
- The user interface is built on top of a very powerful formula language ‘M’ that has immense capabilities well beyond what most users will ever need. If you do ever need something more complex than the UI can support, the language is there (as shown below) and can be used to build a working solution without switching tools.
- Power Query records repeatable “Process Steps” that can be reused over and over without destroying the underlying data. You can go back through the Process Steps and see the data before the transformation took place. You can even insert new transformation steps earlier in the process flow if needed.
- Repeatable process steps means that you can build the steps for one set of data and then you can “reapply” those same process steps to a different set of data (provided both sets of data are fundamentally the same “shape”). This is great for updating weekly or monthly data (for example).
Versions of Power Query
Power BI Desktop
Power Query is fully integrated into Power BI Desktop where it is called “Get Data” – unfortunately. You can find it by navigating to the Home Tab (#1 below) and then clicking Get Data (#2 below). Power Query (Get Data) is the only way to load data in Power BI Desktop, so if you have used this tool to build a new workbook then you have already used Power Query (Get Data).
Why Microsoft couldn’t stick with the name “Power Query” is anyone’s guess. Maybe they thought users were “scared off” by the “Power” term – who knows.
Excel 2016
In Excel 2016 also the product was fully integrated into Excel and renamed “Get and Transform” – unfortunately. To find it in Excel 2016, you need to go to the Data tab (#1 below) and then you will see the Get and Transform group (#2 below).
Excel 2010/2013
Power Query was first released as a free Addin for Excel 2010 and Excel 2013. After you install the Addin, you get a new menu on the Excel Ribbon shown below.
You can find the download details for Excel 2010/2013 on my downloads page here.
The Power Query Formula Language (‘M’)
The official name of the underlying language of Power Query is called “M”. The intellisense in ‘M’ is not as great as DAX but Microsoft is improvising it regularly.
Where to learn more
If you want a comprehensive lesson on how to use Power Query, checkout my online training course here Power Query Online Training for Excel & Power BI Professionals.
I often blog about how to get value from Power Query. You can subscribe to my blog via email at the top of this page. You can also explore the previous Power Query blog posts that I have written here.
There is a great book by Ken Puls and Miguel Escobar – I wrote a book review here. I am also a big fan of Ken’s blog that you can find here.
More peace pieces like this would urge the интернет better. http://www.orlandogamers.org/forum/member.php?action=profile&uid=29913
I feel this is one of the such a lot vital information for me. And i’m satisfied studying your article. But wanna remark on some basic things, The web site style is wonderful, the articles is in reality excellent : D. Good job, cheers
orlistat cheap – https://asacostat.com/ orlistat 120mg sale
Hello! I could have sworn I’ve been to this blog before but after browsing through some of the post I realized it’s new to me. Anyways, I’m definitely happy I found it and I’ll be book-marking and checking back frequently!
Hi! Do you know if they make any plugins to assist with SEO? I’m trying to get my blog to rank for some targeted keywords but I’m not seeing very good success. If you know of any please share. Thanks!
order dapagliflozin generic – cost forxiga 10mg buy dapagliflozin cheap
I’ve been absent for some time, but now I remember why I used to love this web site. Thank you, I¦ll try and check back more often. How frequently you update your website?
you’re really a excellent webmaster. The site loading pace is amazing. It kind of feels that you are doing any unique trick. Moreover, The contents are masterpiece. you have performed a magnificent task in this topic!
Hey just wanted to give you a brief heads up and let you know a few of the images aren’t loading correctly. I’m not sure why but I think its a linking issue. I’ve tried it in two different browsers and both show the same outcome.
Thanks towards putting this up. It’s evidently done. http://bbs.dubu.cn/home.php?mod=space&uid=395568
You are a very smart person!
Palatable blog you procure here.. It’s obdurate to espy great calibre article like yours these days. I truly respect individuals like you! Rent care!!
https://doxycyclinege.com/pro/topiramate/
More posts like this would create the online space more useful. https://ondactone.com/simvastatin/
My brother suggested I may like this blog. He used to be entirely right. This submit actually made my day. You cann’t imagine simply how so much time I had spent for this information! Thanks!
I am actually enchant‚e ‘ to gleam at this blog posts which consists of tons of worthwhile facts, thanks for providing such data. aranitidine
1
1
1
1
1
I couldn’t weather commenting. Adequately written! https://prohnrg.com/product/diltiazem-online/
1
1
1
1
1
1
1
1’||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||’
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
1OjMtd9uX’)) OR 550=(SELECT 550 FROM PG_SLEEP(15))–
1TJlnoXmW’) OR 794=(SELECT 794 FROM PG_SLEEP(15))–
17ir1Zzp3′ OR 105=(SELECT 105 FROM PG_SLEEP(15))–
1-1)) OR 643=(SELECT 643 FROM PG_SLEEP(15))–
1-1) OR 254=(SELECT 254 FROM PG_SLEEP(15))–
1-1 OR 78=(SELECT 78 FROM PG_SLEEP(15))–
1rSG8N7PW’; waitfor delay ‘0:0:15’ —
1-1 waitfor delay ‘0:0:15’ —
1-1); waitfor delay ‘0:0:15’ —
1-1; waitfor delay ‘0:0:15’ —
(select(0)from(select(sleep(15)))v)/*’+(select(0)from(select(sleep(15)))v)+'”+(select(0)from(select(sleep(15)))v)+”*/
10″XOR(1*if(now()=sysdate(),sleep(15),0))XOR”Z
10’XOR(1*if(now()=sysdate(),sleep(15),0))XOR’Z
1*if(now()=sysdate(),sleep(15),0)
1+799-794-5
1*633*628*0
1*1
1A4y4ryka
1
More articles like this would remedy the blogosphere richer. https://ursxdol.com/doxycycline-antibiotic/
Thanks on putting this up. It’s understandably done. gnolvade.com
Greetings! Very useful par‘nesis within this article! It’s the petty changes which wish espy the largest changes. Thanks a quantity towards sharing! https://buyfastonl.com/furosemide.html
legal order viagra online – site do not order mexican viagra
cost zantac 150mg – online ranitidine 150mg tablet
of course like your web site but you have to test the spelling on quite a few of your posts. A number of them are rife with spelling problems and I find it very troublesome to inform the truth nevertheless I?¦ll certainly come back again.
cialis softabs online – cialis max dose cialis max dose
buy generic cenforce – https://cenforcers.com/# cenforce 50mg pill
lexapro 10mg uk – https://escitapro.com/ order escitalopram pill
buy fluconazole 200mg online – site buy generic fluconazole online
where to buy amoxicillin without a prescription – https://combamoxi.com/ amoxil generic
I like what you guys are up also. Such clever work and reporting! Carry on the superb works guys I have incorporated you guys to my blogroll. I think it will improve the value of my site 🙂
I’m not sure why but this web site is loading very slow for me. Is anyone else having this issue or is it a problem on my end? I’ll check back later on and see if the problem still exists.
I like this blog very much, Its a really nice berth to read and find info .
amei este site. Pra saber mais detalhes acesse o site e descubra mais. Todas as informações contidas são conteúdos relevantes e diferentes. Tudo que você precisa saber está está lá.
Este site é realmente fabuloso. Sempre que consigo acessar eu encontro coisas incríveis Você também pode acessar o nosso site e descobrir detalhes! informaçõesexclusivas. Venha descobrir mais agora! 🙂
This actually answered my downside, thanks!
I appreciate, cause I found just what I was looking for. You’ve ended my 4 day long hunt! God Bless you man. Have a great day. Bye
I like what you guys are up too. Such clever work and reporting! Keep up the excellent works guys I?¦ve incorporated you guys to my blogroll. I think it will improve the value of my site 🙂
Hmm it appears like your website ate my first comment (it was extremely long) so I guess I’ll just sum it up what I submitted and say, I’m thoroughly enjoying your blog. I as well am an aspiring blog blogger but I’m still new to the whole thing. Do you have any helpful hints for newbie blog writers? I’d definitely appreciate it.
Great write-up, I’m normal visitor of one’s website, maintain up the excellent operate, and It’s going to be a regular visitor for a long time.
1
1
1
1
1
1
1’||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||’
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
1PBhZIxQl’)) OR 517=(SELECT 517 FROM PG_SLEEP(15))–
1qjV8FZEb’) OR 46=(SELECT 46 FROM PG_SLEEP(15))–
1gLf1j2CC’ OR 447=(SELECT 447 FROM PG_SLEEP(15))–
1-1)) OR 783=(SELECT 783 FROM PG_SLEEP(15))–
1-1) OR 173=(SELECT 173 FROM PG_SLEEP(15))–
1-1 OR 455=(SELECT 455 FROM PG_SLEEP(15))–
1byzmFLPb’; waitfor delay ‘0:0:15’ —
1-1 waitfor delay ‘0:0:15’ —
1-1); waitfor delay ‘0:0:15’ —
1-1; waitfor delay ‘0:0:15’ —
(select(0)from(select(sleep(15)))v)/*’+(select(0)from(select(sleep(15)))v)+'”+(select(0)from(select(sleep(15)))v)+”*/
10″XOR(1*if(now()=sysdate(),sleep(15),0))XOR”Z
10’XOR(1*if(now()=sysdate(),sleep(15),0))XOR’Z
1*if(now()=sysdate(),sleep(15),0)
-1 OR 2+270-270-1=0+0+0+1
1*187*182*0
1*1
1pyR2sutT
1
Great post, I conceive people should acquire a lot from this web site its real user pleasant.
Good summary Matt.
The more I use Power Query (still struggling to call it Get & Transform) the more I love it.
I think Microsoft would hold their hands up and admit the terminology and naming conventions they’ve used haven’t been the best. Measures v Calculated Fields being a prime example.
I still refer to Power Pivot, Power Query and Power Map as “Power BI” tools but now PowerBI.com is really grabbing the PowerBI label so that becomes a point of confusion.
I could not agree more Wyn. I used to call Power Pivot, Power Query and Power Map as “Power BI on the Desktop” until…., well you know what happened then. Power BI Designer became Power BI Desktop.
It is amazing even in the excel expert world of finance how few people have heard of power query.
I think it should have been call PowerDataLaundryMachine personally.
I honestly find Power BI more confusing. Is it a tool set, a stand alone tool, a distribution tool…. I’m still not really clear. Even more confusing perhaps is the licensing around these tools.
Yeah, they make it hard. I heard someone say that some people were “scared off” by the Power Tags thinking – “this must be complex and not for me”.