create table jobs(
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
.....
salaryminus INTEGER UNSIGNED DEFAULT NULL,
salaryplus INTEGER UNSIGNED DEFAULT NULL,
.....
);
chcę zrobić coś takiego:Jak zamówić przez maksymalnie dwie kolumny, które mogą być puste w MySQL?
Select * from jobs order by maxof(salaryminus, salaryplus) limit 10;
maxof(Null,1000)
powinno być 1000,
Jak wdrożyć maxof
?
Należy zauważyć, że 'GREATEST' nie jest standardowym SQL. – Charles
To nie jest standard, ale jest dostarczany przez MySQL, a także PostgreSQL i Oracle. Jest napisane "MAX" w SQLite. Jeśli musisz użyć SQL Server lub potrzebujesz napisać standardowy SQL dla pytania domowego, użyj "' ORDER BY CASE WHERE salaryminus> salaryplus THEN salaryminus ELSE salaryplus END' " –