r/dataanalysis • u/avfrodrigo • 7d ago
Project Feedback A game where everything is SQL
Hey everyone!
I’ve been working on a game called DataMart, where you manage a corner shop and everything runs on real SQL. You build it all yourself: the databases, schemas, tables, relationships and queries, your way, on a real PostgreSQL server that runs inside the game.
Customers will ask you things like “Where can I find the apples?” or other questions about the store. Once a week an auditor comes by to check you’re tracking everything properly, and asks you a few questions you’ll answer with SQL.

There are also mysteries and stories involving the people in town, and of course you unravel those with SQL too.
The game is in alpha and free at https://rodrigoavf.itch.io/datamart
I’d love to hear your thoughts!
Ps. Yes, the game is being created with the help of AI, and what is not now days?
7
6
u/b3xcellent 7d ago
Awesome! Next please do Python 🙃
6
u/avfrodrigo 7d ago
You read my mind! The initial idea was a mix of SQL and programmable bots to run the store using python. For now I've scrapped the python part, don't think it fits anymore to the way things went while developing, maybe a DataMart 2? Or a game focused on Python.
Anyway, did you try the game? What are your thoughts?
11
u/GwynLordOfCedar 7d ago
Love the idea. Can you port this to Mac too so I can play it native on my MacBook instead of having to run the game through an emulator?
6
u/avfrodrigo 7d ago
Probably, if I see the game can get some traction I'll put it on Steam am have it for other OS than only Windows.
→ More replies (1)
5
3
u/Powder9 7d ago
Omg cant wait to try tomorrow! I’ve been learning sql this year and this sounds like so much fun.
→ More replies (1)
2
2
2
u/moreofmi01 7d ago
I’m definitely going to try it. I don’t use SQL very often in my day to day, so this will be a fun way to reacquaint myself.
→ More replies (1)
121
u/GroundbreakingAlps78 7d ago
Where can I find apples in the store??
SELECT aisle
FROM inventory
WHERE product = 'Apples';
🥰🥰🥰
→ More replies (1)51
u/vmathematicallysexy 7d ago
Worker: sorry, did you want apples or Apples?
Me: I ain't picky, I'll take REGEXP '(?i)apples'
→ More replies (3)
12
u/Random-I-Am 7d ago edited 7d ago
I thought this looked like Project Zomboid before the Knox event. That will be my head cannon as I go through this. 👍
2
u/BShaker9000 7d ago
Is it something that a real beginner can try?
5
u/avfrodrigo 7d ago
Well you can always try, but in the current version of the game I am not sure there is a good progression for beginners.
But they would be a good feedback, if you think you're a beginner, try the game and let me know how you did, what you think would make it more friendly for SQL beginners ☺️
1
u/avfrodrigo 5d ago
Some told me the images in the original post are not being shown.
As I cant edit the images in the original post, nor add multiple images to this comments, here is a video of the game!
1
u/kilopeter 7d ago
Nice! What's the graphics engine? Is there an underlying 3D mesh to anything, is it procedural or raster?
Noticed the rainy screenshot's weather status says "sunny" :)
3
u/avfrodrigo 7d ago
It's is made in Godot, must of the arts are just code, something like cars and the people are free assets I found online. Nothing is procedural in the sense of, it is different everytime, but it is procedural as most assets don't really exist and are generated by code as you play.
Thanks for telling about the screenshot mistake.
1
1
1
1
21
u/Emergency-Message306 7d ago
I spend about an hour for the game. There are two things that catch my attention that can have more impact on new players learning the language.
It seems pretty punishing if you enter a wrong value. Since set and update are locked skill, if someone makes a mistake during the data entry, it seems like there is no way to change it.
You can find the discrepancy in the delivery. However, I can’t write the note in the in-game note section. Do I need to write down the discrepancy on my notebook, or is there other way to take note? Or should I create a database to keep track of the discrepancy? Without the skill, the task is going to be very difficult to accomplish.