0

わかりましたので、クエリは非常に単純です。

SELECT a, b, c FROM d WHERE a = ('x' OR 'y' OR 'z');

そして、そのクエリはうまく機能しますが、クエリを行うとしたら、次のようになります。

SELECT a, b, c FROM d WHERE a = ('x' OR 'y' OR 'z' OR 'x1');

'x1' の数値のため、行は返されません。

私はmysql 5.5.9を使用しており、MAMPを使用してMacで仮想サーバーを実行しています(問題がある場合)

助けてくれてありがとう!

4

2 に答える 2

2

これらを試してください

SELECT a, b, c FROM d WHERE a IN ('x','y','z','x1');

また

SELECT a, b, c FROM d 
WHERE a = 'x' OR a = 'y' OR a = 'z' OR a = 'x1';
于 2012-09-09T21:04:43.730 に答える
1

正しいクエリは次のとおりです。

select a, b, c from d where a IN ('x', 'y', 'x1')

IN句は、他の結果に対して式を評価します。INフィールド a が varchar の場合、すべての varchar を句に入れる必要があります

そのクエリは機能するはずです。について読みたい場合はIN、この例を参照してください

于 2012-09-09T21:04:54.250 に答える