mysql では、in は特定の範囲内のデータをクエリするために where 式でよく使用されます。構文は「select*from where field in(value1,value2,..)」です。演算子が追加されると、in とは逆に、これらのリスト項目内で選択を行わないことを意味します。
このチュートリアルの動作環境: Windows10 システム、mysql8.0.22 バージョン、Dell G3 コンピューター。
#mysql のクエリでの使用方法
1. 基本的な使用法
は一般的に次のとおりです。 mysql で使用される where 式では、その機能は特定の範囲内のデータをクエリすることです。select * from where field in (value1,value2,value3,…)
select * from where field not in (value1,value2,value3,…)
2. IN サブクエリ
多くの場合、IN リスト項目の値があいまいで、サブクエリを通じて取得される可能性があります:SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=0)
SELECT uid FROM user WHERE status=0
SELECT * FROM basic_zdjbxx WHERE suiji IN ( SELECT zdcode FROM ( SELECT zdcode FROM basic_h WHERE zdcode != "" ) AS h )
SELECT zd.* FROM ( SELECT DISTINCT zdcode FROM basic_h WHERE zdcode != "" ) AS h LEFT JOIN basic_zdjbxx zd ON zd.suiji = h.zdcode
3. IN 演算子に関する補足説明
IN リスト項目は数値だけでなく文字、さらには時刻と日付の型もサポートしますこれらの異なるタイプのデータ項目は、列のタイプと一貫性を持たずに混合および配置されます:SELECT * FROM user WHERE uid IN(1,2,'3','c')
SELECT * FROM user WHERE uid IN(1,2) OR username IN('admin','manong')
4. IN 演算子の効率について
IN のリスト項目が確実な場合は、代わりに複数の OR を使用できます:SELECT * FROM user WHERE uid IN (2,3,5) // 等效为: SELECT * FROM user WHERE (uid=2 OR aid=3 OR aid=5)
以上がmysqlのクエリで使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。