How to design tables - dabbler question I can understand that this is a basic question, but it's not about knowledge (I think) it's about practical experience.
I came from another field so, be kind, please.
I have my ORDER 
Every ORDER has ITEMS 
Every ITEM has his VARIANTS 
Every VARIANT has his QUANTITY 
When I'm required to store the content of an order, my first instinct is to create an array with items, variants, and quantities and then convert it to a string and finally store it as a field of the ORDERS table.
I can smell there is something wrong.
The ITEMS in the order can be a table, and so can VARIANTS and QUANTITY. And this seems to me as a tidier way to solve the problem.

However, when I have to rebuild an ORDER with the first approach it's very easy and I just have to convert the string to the original 3D array, while with the second I've to look at 3 different tables, and this is not something I feel comfortable with, mainly because it seems like a lot of work to do, and if there are only a few requests, it's easy, but if I have 1000 users at the time I fear that the DBMS can't cope with the workload.
I've tried some basic queries with MySQL and all my fears seem excessive, but I don't know how things work in a real work application. 
I'd be glad to know how a pro would solve this problem. In production, would you use strange concatenations or separate tables (and the DB remains always stable and responsive)?
I have my ORDER
Every ORDER has ITEMS
Every ITEM has his VARIANTS
Every VARIANT has his QUANTITY

In general:
CREATE TABLE t_order (order_id INT AUTO_INCREMENT PRIMARY KEY, 
                      {other columns});

CREATE TABLE t_items (item_id INT AUTO_INCREMENT PRIMARY KEY, 
                      order_id INT REFERENCES t_order (order_id),
                      {other columns});

CREATE TABLE t_variants (variant_id INT AUTO_INCREMENT PRIMARY KEY, 
                         item_id INT REFERENCES t_items (item_id),
                         quantity DECIMAL(10, 2),
                         {other columns});