ホームページ  >  記事  >  バックエンド開発  >  どの MYSQL クエリが速いか、そしてそれにどう対処するか

どの MYSQL クエリが速いか、そしてそれにどう対処するか

WBOY
WBOYオリジナル
2016-06-13 12:49:05847ブラウズ

どの MYSQL クエリが速いですか

最初のタイプ:
表1: 主キーはA(20ビットbigint型)、フィールドBは文字列(表2の自動インクリメントID、複数は「,」で区切る)
表 2: レコード

2 番目のタイプ:
レコードテーブル、フィールド A はインクリメントされ、フィールド B は (20 ビット bigint 型、反復可能、インデックス付き)


データが非常に大きいと仮定すると、特定の 20 ビット bigint 型のデータ リストを取得するには、どのデザイン クエリが速いでしょうか?


-----解決策---------
引用:
引用: 20 ビット bigint、そんなに大きくする必要がありますか? 64 ビット整数イベントに注意してください。
何の事件?聞いたことがないので説明してください
クエリを高速化するために、文字列は BIGINT に変換されます



$large_number = 922337203685477580800;
echo $large_number; //9.2233720368548E 20

本当にそんなに多くの桁を生成する必要があるのでしょうか?


-----解決策--------------------------------
上の階の人はみんな曲がっています..
あなたの問題への対応: 2 番目の
-----解決策----------
もちろん 2 番目のタイプです。
mysql には、カンマ区切りの文字列からメンバーを簡単に抽出する find_in_set 関数が用意されていますが、関数の実行には常に時間がかかります。
直接読むよりも高速に処理できるのはなぜでしょうか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。