0

このネストされたクエリを実行できません。参考: すべてのテーブル名と列名、および検索文字列が動的に提供されます。

SELECT * from (
    SELECT * from employee WHERE 
        empno like '%al%' 
        OR name like '%al%' 
        OR job like '%al%' 
        OR boss like '%al%' 
        OR hiredate like '%al%' 
        OR salary like '%al%' 
        OR comm like '%al%' 
        OR deptno like '%al%' )
    WHERE name like 'al%' 
    union all SELECT * from 
    (SELECT * from employee WHERE
     empno like '%al%' 
        OR name like '%al%' 
        OR job like '%al%' 
        OR boss like '%al%' 
        OR hiredate like '%al%' 
        OR salary like '%al%' 
        OR comm like '%al%' 
        OR deptno like '%al%' ) 
    WHERE name like '%al%' and name not like 'al%'

従業員テーブルのすべての列(empno、name、job、boss、hiredateなど)で文字列(例:「al」)を検索したいのですが、結果は「name」列に関して表示されるべきです。結果は次の順序で表示されます: 1) 最初に名前列の「al」で始まる従業員の「名前」、次に 2) 名前列のどこかに「al」を含む従業員の「名前」。

4

1 に答える 1

0

select * for employee WHERE name like 'al%' UNION select * from employee WHERE name like '%al%' UNION select * from employee WHERE employee like '%al%' OR job like '%al%' OR Boss like 'al %' OR '%al%' のような雇用日 OR '%al%' のような部門番号

于 2013-08-06T08:58:14.703 に答える