TOP 10 Helpful SQL Queries

There are a number of varieties of code used within the typical WordPress web site: HTML and CSS are used to manage the visible look of the location, PHP and JavaScript present the performance of the web site, and SQL (together with PHP) is used to speak with the database.

WordPress Database Fundamentals

All of the content material of your web site together with its construction and consumer info is saved within the database. This makes WordPress websites a sort of dynamic web site the place the HTML is generated in actual time versus static web sites that use pre-written HTML information.

Each time somebody accesses your WordPress web site, the content material is fetched from the database utilizing a sequence of SQL queries.

All information utilized by your web site is saved in tables within the database. You may consider a desk as a storage container for one sort of information, so your information is stored organized by retaining several types of information in numerous tables.

The core WordPress tables are:

  • wp_posts – all of the content material of your posts and pages in addition to menu information and media attachments.
  • wp_postmeta – meta information for every submit. Meta information is added to this desk if you add a customized subject to your posts so for instance, you can add what music you had been listening to on the time of writing the submit.
  • wp_comments – all of your feedback on posts and pages together with writer, date, e mail, and many others.
  • wp_commentmeta – meta information for feedback.
  • wp_users – usernames, passwords (encrypted), and different consumer information.
  • wp_usermeta – meta information for customers.
  • wp_options – normal WordPress settings.
  • wp_links – used for blogroll hyperlinks, not likely used on most WordPress websites at the moment.
  • wp_terms – classes and tags for posts.
  • wp_termmeta – meta information for classes and tags.
  • wp_term_relationships – hyperlinks posts with classes and tags.
  • wp_term_taxonomy – taxonomies are used for classifying your information. The WordPress default taxonomies are class, tag, and hyperlink class. This desk manages the taxonomies together with their identify and outline.

These are the essential WordPress tables. Your WordPress tables might also have a special prefix. “wp_” is the default however it’s usually modified for safety causes.

Every desk within the database has a number of fields. For instance wp_users has:

  • ID
  • user_login
  • user_pass
  • user_nicename
  • user_email
  • user_url
  • user_registered
  • user_activation_key
  • user_status
  • display_name

By utilizing SQL you possibly can view or edit any subject in any desk of the database. You can too add or delete information and create or delete tables if you must.

The right way to Use SQL Instructions With the WordPress Database

The PHP code in your WordPress web site comprises SQL instructions to speak with the database however if you wish to perform handbook database operations it’s extra handy to have the ability to ship the SQL instructions manually.

WordPress makes use of MySQL as its database administration system. MySQL doesn’t include a graphical consumer interface and will be managed by way of the command line, nevertheless it’s a lot simpler for many customers to “see” their database tables visually.

There are numerous graphical consumer interfaces for MySQL however the preferred one is phpMyAdmin. You may often entry phpMyAdmin out of your internet hosting admin panel:


As soon as logged in it is best to see a display screen like this:

phpmyadmin home

Your databases might be listed down the left hand aspect and there must be one for every WordPress web site you might have put in in your server. You may also have another databases for none-WordPress associated issues.

In case you discover the database for the location you wish to work on and click on on it (if you happen to’re undecided which is the proper database, you could find it in your wp-config.php file subsequent to DB_NAME), you’ll get an summary of all of the tables within the database, which must be the identical as these listed above if it’s a contemporary WordPress set up:

phpmyadmin wordpress database

On this web page you possibly can create a brand new desk and click on on present tables to view the info. There are additionally numerous tabs alongside the highest of the web page you could click on on to hold out numerous capabilities:

  • SQL
  • Search
  • Question
  • Export
  • Import
  • Operations
  • Routines
  • Occasions
  • Set off
  • Designer

Looking the Database

The search tab could be a useful option to discover and edit data individually with out utilizing SQL instructions. For instance if you happen to wished to seek for a selected consumer by e mail, you can simply sort the e-mail deal with into the search field and choose the wp_users database (you may also search your entire database).

phpmyadmin database search

As soon as the search is full, click on the “browse” hyperlink and click on on outcomes to edit them immediately. You can too delete and duplicate data.

Earlier than we go any additional, it goes with out saying (however I’m going to say it anyway) that it is best to again up your WordPress database earlier than making any adjustments to it. A easy typo in an SQL command might mess up your total web site and it’s not all the time simple to repair errors.

The right way to Backup Your WordPress Database in PHPMyAdmin

There are numerous WordPress backup plugins that can backup your entire web site, together with the database, however as you’re already in PHPMyAdmin.

Fortunately that is very easy (until you might have a very massive database or your WordPress web site shares the database with different applications, through which case observe the customized backup process here).

All you must do is go to the “Export” tab, select “Fast” because the export methodology, select “SQL” because the format, and click on the Go button.

phpmyadmin database backup

The file will obtain to your pc and you may transfer it to a protected place for storage.

In case you do want to revive from backup, go to the “Import” tab, select your backup file, and click on Go (the default settings must be high-quality typically).

Operating SQL Instructions in PHP MyAdmin

Clicking the “SQL” tab will take you to a display screen with a big textual content field. That is the place you possibly can sort SQL instructions to question and edit the database.

phpmyadmin sql

Helpful SQL Instructions for WordPress

Now you possibly can see your database and know how you can question it, you can begin having some enjoyable. There are some very helpful issues you are able to do with handbook SQL instructions that aren’t usually doable with out the assistance of a third-party plugin.

Keep in mind in case your tables have a special prefix (they don’t begin with “wp_”) you’ll need to edit the desk names.

1. Change Your WordPress Password

Forgotten your password and locked your self out of your WordPress web site? No worries – you possibly can reset it manually within the database with this SQL question:

1UPDATE wp_users SET user_pass = MD5( '[new_password]' ) WHERE user_login = '[username]';

MD5 encrypts the new password so anybody having access to the database just isn’t capable of learn the password.

2. Switch Posts to a New Creator

If in case you have a number of authors on a web site or take over an present web site from one side to other, you would possibly wish to switch present posts into your username. To do that you should use the following qurey:

2  wp_posts
4  post_author = (SELECT ID FROM wp_users WHERE user_login = '[new_author_login]')
6  post_author = (SELECT ID FROM wp_users WHERE user_login = '[old_author_login]');

3. Bulk Delete Spam Feedback

WordPress comes with the Akismet plugin put in as default, which is fairly good at flagging spam. Nonetheless it’s as much as you to repeatedly examine and delete your spam messages.

In case you’ve left it some time, you can have 1000’s of spam messages and it could take ages to delete all of them from the dashboard one web page at a time. As an alternative use the next SQL command to delete the lot in a single go:

1DELETE FROM wp_comments WHERE comment_approved = "spam";

If in case you have 1000’s of pending feedback and don’t have time to resume them, you possibly can simply delete them with the next question (however remember you might find yourself deleting some real feedback):

1DELETE FROM wp_comments WHERE comment_approved = "0";

In case you don’t wish to delete all of your feedback however have an issue with a spammer who retains linking again to a sure web site, you should use this question to eliminate all feedback attributed to a sure URL:

1DELETE from wp_comments WHERE comment_author_url LIKE "%spamurl%" ;

4. Replace Hyperlinks When You Transfer to a New Area

Hyperlinks in WordPress are absolute quite than relative, so that you’ll have to vary all of them if you transfer your web site to a brand new server. There are plugins that can do that for you or your can use the next SQL command:

1UPDATE wp_posts SET post_content = REPLACE (post_content, '[old_domain]''[new_domain]');

That is principally a discover and exchange perform for all of the posts in your web site so that you might be able to use it for different functions too.

5. Change Your WordPress Posts into Pages

Typically when you create a blog in WordPress and notice at a later date that it’s a useful resource that might most likely be higher as a web page. Fortunately that is very easy to do with following sql command:

1UPDATE wp_posts SET post_type = 'web page' WHERE post_type = 'submit';

You can too change pages into posts with following sql:

1UPDATE wp_posts SET post_type = 'submit' WHERE post_type = 'web page';

6. Change your WordPress Username

You may  change your WordPress username from the dashboard, which is a little bit of a headache. Fortunately it’s simple to do with SQL. It’s best to practice to change  your admin username which is “Admin” to something more unusual, to strengthen the safety of your web site.

1UPDATE wp_users SET user_login = 'newusername' WHERE user_login = 'oldusername';

7. Delete Submit Revisions

WordPress automatically saves completely different revisions of your posts as you edit them however these can take up a lot of space in your database. You may delete them with the following query:

1DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision';

8. Disable Feedback on Outdated Posts

Spammers usually like to post on outdated posts. You may turn off feedback on all posts with following query.

1UPDATE wp_posts SET comment_status = 'closed' WHERE post_date < '2016-01-01' AND post_status = 'publish';

9. Change URL of WordPress Photos

In case you’ve moved your WordPress web site, you’ll want to change all of your picture URLs. You may also resolve to host your pictures elsewhere to save lots of load on server. To alter your picture URLs use the following query:

1UPDATE wp_posts SET post_content = exchange(post_content, 'Outdated URL''New URL');

10. Batch Disable Plugins

Often you will not able to login to your admin if you install any plugin which conflict with your current plugins and you are not able to login to your admin pane . In this case you can’t get into your admin panel, attempt disabling all plugins out of your database first and you may then go in and re-enable them one after the other.

1UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';

11. Disable User Feedback on All Posts

This query allow you to stop user feedback . You can turn off feedback on all posts without delay with this sql query:

1UPDATE wp_posts SET comment_status = 'closed' the place post_type ='submit';

Hope you like all above sql queries and get benefit from these.