私は、次のMySQL - 重複なしで2つのテーブルを結合するには?
hotels
------
hotelID
hotelName
第二に、テーブルのような二つのテーブル
operators
---------
opID
opName
opServices
opHotelID
簡単な説明があります:最初の表では、私は一意であるインクリメントIDを持っているホテルの多くを持っています。 2番目の表には、このホテルに追加のサービスを提供しているすべてのオペレーターが含まれています。ここのopIDもユニークですが、opHotelIDは複数のオペレータが存在することがあるため、複数回存在します。
は今、私が取得したいことは、次のとおりです。
私はHotelNameやホテルを提供し、すべての演算子を示します(オペレーターと呼ばれる)追加の列を取得したいです。
だから、結果はこれに代えて
123 - Hotel ABC - OP1,Op2,OP3
...このようにする必要があり...
123 - Hotel ABC - OP1
123 - HOtel ABC - OP2
123 - Hotel ABC - OP3
は、1つのSQLクエリまたはどのように解決するにはこれを行う方法はありますこの問題?私は現在、検索機能に取り組んでおり、現在、私は左の結合で単純なSELECTクエリを持っていますが、これはさらに多くの行を返します。検索で一意のHotelIDのみを表示し、異なる演算子を1つの列に結合する必要があります。
あなたが助け、良い一日を持っていてくれてありがとう...
さようなら WorldSignia
ありがとうございます。それは今働く:) –
多分私は行を数えることができますか教えてくれますか?特に私はLIMITをクエリに追加します。このクエリが生成する最大行を取得するにはどうすればよいですか?単純なCOUNTは機能しません。 –
私はカウントオプションのために私の答えを編集しました。内部結合を左結合で置き換える必要がありますので、オペレータのいないホテルが必要です。 – Arkh