How have you solved the issue around
LEFT JOIN's and null values with MySQL and Go?
For example I have two tables
order_item. All columns have the
not null attribute. An order can have 0 or more order_items. A simple select, left join query of an order without any order_items fails
Row.Scan() because the order_item columns come back as null:
SELECT * FROM `order` LEFT JOIN `order_item` USING (order_id) WHERE `order`.order_id = '123'
I can see three solutions, none that I think are really good:
IFNULL=> Annoying because my select part of the query is automatically generated.
- Use the null values from mysql go lib => This will mean that every value in my order_item struct will be of these types.
- Split the query into 2 => Problem if I want a list of 50 orders with order_items, that will be 51 queries.
Any other solutions you have?