IN
演算子を使用してmysqlデータベースからクエリを実行しようとしています。mysql IN演算子は降順で値を返します
SELECT usernum FROM usergroup WHERE emailmain IN ('[email protected]', '[email protected]', '[email protected]')
クエリが動作しますが、代わりに順番にusernum
値をoutputingのは、それが多い順に出力入りました。これは私が電子メールに合わせるために必要なので問題です。私はそれがlimit
オペレーターかORDER BY emailmain
を使用しなければならないかもしれないと思う。私はそれを試してきましたが、電子メールがデータベースに存在しないと仮定すると、アレイのメモリ位置に対応しないため、まだ動作しません。
私にとって最も重要なことは、データベースにない電子メールを知っていることです。
ご協力いただければ幸いです!
指定しないと、どのような順序でそれらを期待しますか? 「EXPLAIN SELECT ...」構文を使用して、データベースがデータを返すために使用しているインデックスを決定するのに役立ちます。あなたが指定していない場合 - mysqlはクエリに答えるのが最良と判断したインデックスを使用します –
私は私が何を考えていたのか分かりません。その遅れと私はインデックスについて考えなかった。しかし、私はまだそれがデータベースにない電子メールを教えてくれないという問題に取り組んでいます。 – Trent
これはあなたの問題かもしれません - あなたは私のように思っています - プログラマとして - DBAではありません - 99.9999%の電子メールのすべてがあなたのデータベースにありません - あなたはあなたが望むものについて「セット理論」を考える必要があります - この電子メールのリストは私のDBにありません "私の提案は、 '言った'電子メールのテーブルを作成し、次に左の結合を行い、NULLをチェックすることです。 –