Jak porównać jedną wartość z wartością odpowiednim innej wartości?

0

Pytanie

Mam stolik:

Table 1
pizza     |price|country|base
-----------------------------------
americano | 2   | U.S   | wholemeal
funghi    | 3   | Italy | wholemeal
sicilliano| 7   | Italy | wholemeal

Muszę wymienić wszystkie pizza elementy, które mają takie same country żywioł, jak siciliano pizzanie stosując podzapytanie.

mysql
2021-11-24 00:48:27
1

Najlepsza odpowiedź

1

INNER JOIN tę samą tabelę można znaleźć w instrukcji o połączeniu

Ponieważ nie chcesz podkwerendy, można ominąć za pomocą join, podczas uruchamiania

SELECT t1.*,t2.* FROM Table1 t1 INNER JOIN Table1 t2 ON t1.`country` = t2.`country`

Widać, że zawsze wiersz kraju w t1, można znaleźć wiersz z t2. W ten sposób, aby siziliano w t1 otrzymasz фунги i siziliano w t2.

Reszta - to skrót wszystkich wierszy t2 do tych, które są potrzebne

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 |

obd<>skrzypce <>tutaj

2021-11-24 08:56:30

Mogę prosić o jeszcze jedno-jakich wyjaśnień? Próbowałem czytać tych instrukcji, jednak, wydaje się, nie mogę tego zrozumieć.
czarniecki

dodałem trochę wyjaśnienie, w sumie pokaż całą kolumnę, i dlatego lepiej widać, co sprawia, że połączenie lub w klauzuli where
nbk

A gdybym chciał wymienić wszystkie pizze, ceny są wyższe niż na konkretną? WYBIERZ t2.pizza Z menu t1 menu WEWNĘTRZNE POŁĄCZENIE t2 NA t1.cena = t2.cena, GDZIE t1.cena > "amerykańsko"; próbowałem coś takiego, ale oczywiście nie można porównać ciąg znaków na liczbę całkowitą>
czarniecki

to samo jest z подзапросом, jeśli musisz wybrać cenę americano, bez konieczności przyłączenia się do innej tabeli, która filtruje wszystko, co mniej, daj jej trz lub zadaj inne pytanie, teraz masz link na skrzypce, które można dodać
nbk

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................