私は、MySQLデータベースから列その逆を使用してすべての値を取得できますか

サミルシェイク:

私は、MySQLデータベース内のデータベースから万力その逆のカラムを使用してデータを取得したいです。

たとえば、以下の画像を参照してください。 ここでは、画像の説明を入力します。

画像の上には、列名を見ることができますinitiator_user_idfriend_user_id私はすべてのものをしたいので、列をfriends_user_id and initiator_user_id両方の列に格納されていることを。だからここに1私は両方の列に格納されている89,63,155 idをしたいので、両方の列に格納されています。

私が使用してレコードを取得しようとしたCASEのステートメントが、それは動作しないでしょう。

SQLクエリ..

 SELECT *,
CASE
    WHEN friend_user_id != '' THEN initiator_user_id 
    WHEN initiator_user_id != '' THEN friend_user_id 
    ELSE ''
END AS users_id
FROM tablename

誰かがどのように私はそれらのレコードを取得することができ、私に知らせてください!

アーロンW.:

方法の一握りこれが行うことができる-私はすぐに一緒にUNION DISTINCT文を投げたsqlfiddle月助けていること。基本的にはそれだけで2つのクエリを取って、あなたの結果を得るためにそれらを一緒に入れています。

(SELECT initiator_user_id as user_id FROM test WHERE friend_user_id = 1) 
UNION DISTINCT 
(SELECT friend_user_id as user_id FROM test WHERE initiator_user_id = 1)

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=373597&siteId=1