Удалите указанные c поля и покажите другие поля в Mysql - PullRequest
1 голос
/ 07 апреля 2020

Я хотел бы спросить, как решить эту проблему MySQL. В настоящее время у меня есть этот запрос выбора

SELECT username, friend_username from friends
WHERE (username = "apple" or friend_username = "apple");

, и он показывает эту таблицу Friends (ниже).

Friends Table
------------------------------
| username | friend_username |
------------------------------
| apple    | orange          |
| apple    | pear            |
| durian   | apple           |
------------------------------

Но я хотел бы выполнить запрос на выборку, чтобы он выглядел следующим образом (ниже).

------------
| username |  
------------
| orange   |
| pear     |
| durian   |
------------

Есть ли какие-либо возможные способы добиться этого? Ценю помощь! Спасибо.

1 Ответ

2 голосов
/ 07 апреля 2020

Я бы написал это как:

select case when username = 'apple' then friend_username else username end username
from friends
where 'apple' in (username, friend_username);

Предложение where использует in для фильтрации по строкам, где username или friend_username равно 'apple'. Затем выражение case в предложении select отображает столбец «прочее».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...