0

以下のような mssql テーブルがあります:-

tblstatusjadual 構造体

そして、以下のようなphpページからのmssqlクエリ:-

SELECT * from tblstatusjadual where (idjadual LIKE '1%' AND 
CONTAINS(idjadual,'1.1 OR 1.2 OR 1.3 OR 1.4 OR 1.5 OR 1.6 OR 1.7 OR 1.8 OR 1.9'))
and tahun='2011'

ご覧のとおり、CONTAINSブラケットには1.10の値がありませんが、このクエリを実行すると、idjadual 1.10 の結果が返されます。なぜこれが起こるのですか?

mssql クエリの結果

どんな助けでも大歓迎です。

4

1 に答える 1

0

MSDNからこの例を確認してください

USE AdventureWorks2008R2;
GO
SELECT Name
FROM Production.Product
WHERE CONTAINS(Name, ' "Mountain" OR "Road" ')
GO

これに基づいて、次のようなことを試すことができます。

SELECT * 
from tblstatusjadual  
where (idjadual LIKE '1%' AND 
CONTAINS(idjadual,'"1.1" OR "1.2" OR "1.3" OR "1.4" OR "1.5" OR "1.6" OR "1.7" OR "1.8" OR "1.9"'))
and tahun='2011'
于 2013-05-15T09:26:26.817 に答える