1

Hi I need to correct this query, which ends with error:

missing right parenthesis

what's nonsense, problem is probably somewhere else

SELECT name, 
      (name LIKE '%adam%') AS score 
  FROM names 
 ORDER BY score DESC

If is not possible use LIKE in SELECT part, how is possible to list "ADAMS" first ?

4

3 回答 3

2

尝试这个:

SELECT name, 
       (CASE WHEN (name LIKE '%adam%') THEN 1 ELSE 0 END) AS score
FROM names 
ORDER BY score DESC
于 2013-10-24T09:29:18.893 回答
0

Oracle SQL 没有布尔数据类型,因此选择布尔值是非法的。

请参阅 Oracle 数据库中是否有布尔类型?

于 2013-10-24T09:17:02.447 回答
0

您也可以通过替换 score 列来按顺序编写 SQL

于 2013-10-24T10:19:58.420 回答