Support

If you have a question or something isn't working in Haru SQL, check the frequently asked questions below or email us at any time.

Contact us

Send an email to the address below. Including the following helps us help you faster.

  • Your device and OS version (e.g. iPhone 15, iOS 18)
  • App version (shown in Settings > App info)
  • The app language you use
  • Which screen had the problem, the SQL you ran and how to reproduce it (screenshots help)

Please do not send payment card details or passwords. You do not need to include personal information unrelated to the issue.

Frequently asked questions

How do I get started?

Open today's mission on the Today tab, or choose a topic and stage on the Data packs tab. Write SQL, tap "Run" to see the result, then tap "Check answer" to compare it with the expected result.

Do I need an account or internet connection? Where is my information stored?

No account is needed. Your progress, the SQL you write and your databases are stored only on your phone and are never sent to us or any server. Missions and data are built into the app, so you can learn without internet. The internet is used only to load banner ads on Android.

How are answers checked?

Not by the SQL text itself, but by comparing the result's column order, values, NULLs and number of duplicates. Row order is checked only when a mission asks for sorting, and the answer is verified again on two hidden data sets. Column aliases do not affect the check.

Which SQL syntax does the app use?

SQLite syntax. Learning missions are read-only, so you run one statement starting with SELECT or WITH. You can practice CREATE, INSERT, UPDATE and DELETE in My databases. Function names or results may differ slightly in other databases.

What can I do when I'm stuck?

Open Hints & explanation on the mission screen for a hint, and if it's still hard, open "Learn with the solution". Missions solved after viewing the solution are recorded separately as learning with the explanation. When an error occurs, the app shows its cause, how to fix it and where it is.

Can I solve the same mission with different data?

Tap Generate new data on a mission screen or in the SQL playground to practice the same concept again with a data set that has different prices, quantities, regions, dates and relationships.

What are My databases?

A space where you create a blank or sample database from "Open database studio" on the home screen or the database button at the top, and run table creation, data changes, transactions, triggers and indexes yourself. You can create up to 50, and if any statement in a run fails, that run is not saved. The last successful change can be undone once.

Are there ads or in-app purchases?

There are no in-app purchases or subscriptions. The Android app shows a banner ad above the tab bar at the bottom of the screen, and it never covers missions or buttons. Store purchases and refunds are handled by the App Store or Google Play.

How do I change the app language?

In Settings > App language, choose one of 20 languages or select "Device language" to follow your device. SQL, table names and data values are the same in every language, so your queries keep working when you switch.

My progress disappeared.

Progress is stored only on your device, so it does not carry over if you delete the app or switch devices. Restoring from a device backup may bring it back. If storage is low, the app shows a message that progress could not be saved; free up space and try again.

How do I delete my data?

Settings > Reset learning progress deletes completed missions, bookmarks, the SQL you wrote and recent history, and you can delete your databases one by one from the list. Deleting the app also removes the data from your device. Since we never receive the information you enter, there is nothing for us to delete on our side. You can manage ad data processed by Google with your device settings and Google's privacy tools.

Haru SQL's missions and data are fictional and made for learning SQL; amounts are learning points. Queries run with SQLite syntax, so function names or results may differ in other databases.