Andreas says the input side (eg, 100,000 satoshi) will not be equal to the output side (eg, 98,000 satoshi). He said the difference is the transaction fee paid to the miner (2,000 in this example), but this fee does not appear in the transaction.
It simply just like how banks work, you can’t send out all that you have to the recipient address because the miner fee needs to be deducted from it. Most wallets are configured to reject the broadcast of the transaction without the miner fees.
If I understood Andreas correctly, I'm confused about this. Doesn't the transaction fee need to go to the miner's public bitcoin address? If it's not specified in the transaction (as an output), where is it? I assume it must be somewhere on the blockchain?
The block in which your transaction was added has a special transaction which is usually the first transaction on the block which is called the coinbase transaction it is use to claim the incentives from mining a block and transaction fees of the added transactions, it has just one input which is the claiming incentives. This transaction is actually added by the miner themselves so when the transaction you sent goes to the intended output the fee goes to the Coinbase transaction of the miner. This transaction (coinbase transaction) is unique in such way that the transaction cannot be spent until it has about 100 confirmations I.e below hundred blocks