SELECT computer_type,
operating_system,
count(*)
FROM computers
WHERE computer_type = 'DESKTOP'
AND operating_system = 'UNIX'
GROUP BY
computer_type,
operating_system;
Это предполагает, что COMPUTER_TYPE
и OPERATING_SYSTEM
столбцы имеют тип VARCHAR2
(который вы можете увидеть, если вы используете команду DESCRIBE computers;
). Если они имеют тип CHAR
, то они будут правы, дополненное пробелами, и вы можете использовать это:
SELECT computer_type,
operating_system,
count(*)
FROM computers
WHERE RTRIM(computer_type) = 'DESKTOP'
AND RTRIM(operating_system) = 'UNIX'
GROUP BY
computer_type,
operating_system;
Или, вы можете прямо подушечка строковые литералы вне соответствующей длины:
SELECT computer_type,
operating_system,
count(*)
FROM computers
WHERE computer_type = 'DESKTOP '
AND operating_system = 'UNIX '
GROUP BY
computer_type,
operating_system;
Безразлично Вам будет намного легче, пожалуйста, покажите, что вы пробовали? – sgeddes
SELECT computer_type, operating_system, count (*) FROM computers WHERE computer_type = 'DESKTOP' и operating_system = 'UNIX' GROUP BYcomputer_type, operating_system; –
Это то, что я считал самым близким, но я получил имена столбцов без данных в таблице. –