У меня есть таблица с именем ноутбуки с несколькими строками. У меня есть 3 поля плюс 4 строки образца:
item_id | operating_system | item_title
-------+-------------+-------------
1 | Windows 10 | Toshiba with Windows 10 Pro and a mouse
2 | Windows 10 Pro | HP with Windows 10 Pro
3 | Linux | Dell with Windows 10
4 | iOS 11 | Random Apple laptop
Мне нужно решить следующие варианты использования:
- Получить несоответствия: Извлечь только те строки, в которых операционная система, отображаемая как часть item_title, НЕ является той, которая указана в operating_system. item_title будет содержать в качестве строки любую другую операционную систему в столбце operating_system. Это случай идентификаторов № 1 и № 3
- Строковые значения в других значениях: Некоторые строковые значения operating_system включены в другие большие значения. Например, кто-то может сказать, что id # 1 является верным, потому что в item_title отображается «Windows 10», НО ЭТО НЕТ, потому что фактическим значением является «Windows 10 Pro», так что это также несоответствие.
Честно говоря, я довольно заблокирован, как это сделать, я начал запрос как:
SELECT * FROM laptops
WHERE item_name NOT LIKE ('%'+operating_system+'%')
но мои знания SQL ограничены, и я не знаю, как выполнить 2 варианта использования, которые я представил.