私はデータベーステーブルをクエリするためにMySQLを使用しています。データを失うことなくSQLクエリを最適化するには?
私は最終的に、私のデータベースから私が望むものを返すことがわかりました。 (私はSQLの専門家ではありません)
しかし、上記のクエリは、phpMyAdminで結果を表示するのに時間がかかります。
Showing rows 0 - 24 (32 total, Query took 7.1488 sec)
このクエリは7秒より速くなるように最適化できますか?ここで
は私SQLFiddleです:
http://sqlfiddle.com/#!9/d3b5a2
詳細な説明:
表:各チケットのswcustomfieldvalues
customfieldvalueid
customfieldid
typeid <— This field is not unique in this table
fieldvalue
isserialized
isencrypted
dateline
uniquehash
lastupdated
、私はswcustomfieldvalues
全9つのカスタムフィールドを持っています各9つのカスタムフィールドチケットにはtypeid
(= ticketid
、swtickes
の表)があります。私は9行を取得しますtypeid=98765
については、この表を照会する場合は、fieldvalue
は、ユーザーの携帯電話の番号
を保持している
7 = customfieldid
場合
はcustomfieldid
= 6場合は、fieldvalue
は、ユーザーのフルネームを保持していますすべてが同じタイプIDを持ち、fieldvalue
とcustomfieldid
などの異なる値を持っています。
私はこのresからしたいcustomfieldid=6
だけcustomfieldid=7
fieldvalue=1234567
場合ULT(9行)fieldvalue
値は、私はすでに私のクエリでこの値1234567
を持っているので、それが結果にかリストされている場合、私は気にしないでください。
詳細な説明:
現在のすべての答えが正常に「swtickets」テーブルからクエリPLUS他のチケット脱線で提供される携帯電話番号を持っている各チケットの行のこれらのセットをフェッチします。我々はこれまで何をしている
: 検索(クエリ)はcustomfieldid = 7とフィールド値= 0555.
すべてが正常であるときの条件で行われます。しかし、私はフィールド値を結果に表示したくありません(私は気にしません)私は行の結果に名前を表示します。
私は場合にのみcustomfieldid=6
持つ行のためのfieldvalue
たい:
customfieldid=7
と
行は、2つのクエリ(鉱山の答えに関する)のfieldvalue=0555
結果を持っているが
をお試しください: 'テーブル/エイリアスユニークではない:それはのために返すことを除いて、私は私の答えを編集した「swcustomfieldvalues」' – malhobayyeb
[OK]をあなたは今 –
ほぼ正しいことを確認することができます私が望まない 'swcustomfieldvalues.customfieldid'の' swcustomfieldvalues.fieldvalue'は '123'と同じではない – malhobayyeb