INNER JOIN
aynı tablo BİRLEŞTİRME ile ilgili kılavuza bakın
Alt sorgu istemediğiniz için, çalıştırdığınızda joın kullanarak onu atlatırsınız
SELECT t1.*,t2.* FROM Table1 t1 INNER JOIN Table1 t2 ON t1.`country` = t2.`country`
Tat for ever ülke satırını t1'de görüyorsunuz, t2'den bir satır buluyorsunuz.
Yani t1'deki siziliano için t2'de funghi ve siziliano elde edersiniz.
Gerisi, tüm t2 satırlarını ihtiyacınız olanlara indirgemektir
CREATE TABLE IF NOT EXISTS Table1 (
`pizza` VARCHAR(10),
`price` INTEGER,
`country` VARCHAR(5),
`base` VARCHAR(9)
);
INSERT IGNORE INTO Table1
(`pizza`, `price`, `country`, `base`)
VALUES
('americano', '2', 'U.S', 'wholemeal'),
('funghi', '3', 'Italy', 'wholemeal'),
('sicilliano', '7', 'Italy', 'wholemeal');
SELECT t2.`pizza` FROM Table1 t1 INNER JOIN Table1 t2 ON t1.`country` = t2.`country` WHERE t1.`pizza` = 'sicilliano'
| pizza |
| :--------- |
| funghi |
| siciliano |
db < >keman < > burada