2014-12-17 1 views
-1

У меня есть таблица apartment нижеGROUP_CONCAT distint на выбранных столбцов в MySQL

aid |  aname 
1 | dream home 
2 | My hub 
3 | Lake view 

другой таблицы apartment_details

id | aid | bhk | size | facing 
1 |  1  |  2  | 1200 |  east 
2 |  1  |  2  | 1200 |  west 
3 |  1  |  2  | 1000 |  south 
4 |  1  |  2  | 1000 |  north 

Я написал запрос в

SELECT distinct ap.aid, ap.aname, al.bhk, (select group_concat(distinct concat(al.bhk,'BHK - ',al.size)) from apartment_details as al where al.id = ap.aid) as details 

Когда я попытался для отображения details с использованием foreach Я получаю вывод как

 2BHK - 1200 
     2BHK - 1200 
     2BHK - 1000 
     2BHK - 1000 

В этом запросе он рассматривает bhk, size, обращаясь в разные стороны, а полученный результат основан на облицовке. Это похоже на то, что я показываю повторяющиеся данные или что-то, что повторяются одни и те же данные, так как нет отображаемого отображения. Как можно отобразить только определенные значения, основанные на ВНК, размера и не смотрят, так что я получаю вывод как

 2BHK - 1200 
     2BHK - 1000 

Может кто-нибудь помочь мне в решении этой проблемы? Заранее спасибо

+0

Как возможно, что одна и та же квартира может иметь два разных размера? (360-градусные представления также немного необычны, но немыслимы). – Strawberry

ответ

0

К моему способу мышления, в общем, нет проблем в SQL, для которого GROUP_CONCAT является решением. Поэтому, имея в виду это, давайте начнем с этого:

SELECT DISTINCT bhk,size FROM apartment_details 
+0

Как и в подзапросе, он выдает ошибку, так как операнд должен содержать 1 столбец для того, что я использовал group_concat –

 Смежные вопросы

  • Нет связанных вопросов^_^