选择列上的所有列数æ®ä½†ä¸åŒ

时间:2014-09-23 05:59:01

标签: php mysql

SELECT * DISTINCT `contact_id`  
 FROM `survey_response_single`  
  WHERE text_id = '1' LIMIT 0, 15 

我想使用ä¸åŒçš„查询

获å–所有列数æ®

6 个答案:

答案 0 :(得分:1)

首先,看起æ¥ä»–想è¦è®¿é—®æ‰€æœ‰åˆ—。因此,在使用DISTINCT时,必须指定所有列,但ä¸èƒ½ä½¿ç”¨*

但是如果我们使用GROUP BY,这个问题就å¯ä»¥è§£å†³äº†ã€‚与GROUP BY一样,您将åªèŽ·å¾—contact_idçš„ä¸åŒå€¼ï¼Œå› ä¸ºç±»ä¼¼çš„值将被分组。此外,现在我们å¯ä»¥ä½¿ç”¨*

访问所有列
SELECT * FROM `survey_response_single`  
WHERE text_id = '1' 
GROUP BY `contact_id`

答案 1 :(得分:0)

å°è¯•ä»¥ä¸‹ä»»ä½•ä¸€é¡¹å–决于您想è¦çš„输出:

SELECT DISTINCT contact_id, text_id, details  -- take your column names
FROM survey_response_single  
WHERE text_id = '1' LIMIT 0, 15 

http://sqlfiddle.com/#!2/3d502/4

或者这个(如果你åªæƒ³è¦å•ä¸ªåˆ—çš„ä¸åŒå€¼ï¼‰ï¼š

SELECT DISTINCT contact_id
FROM survey_response_single  
WHERE text_id = '1' LIMIT 0, 15 

http://sqlfiddle.com/#!2/3d502/6

答案 2 :(得分:0)

è½»æ¾ï¼š

SELECT DISTINCT `contact_id`, *
FROM `survey_response_single`
WHERE `text_id` = '1' LIMIT 0, 15

许多人都ä¸çŸ¥é“:'*'ä¸ä¸€å®šæ˜¯SELECT中的唯一语å¥ã€‚您å¯ä»¥é€šè¿‡é€—å·è½»æ¾åˆ†éš”它并获å–更多列。

您在目标列上调用DISTINCT,并使用星å·èŽ·å–所有其他列。

唯一的副作用是您的结果表将包å«ä¸¤ä¸ªå†…容相åŒçš„“contact_idâ€åˆ—。但是,当你使用PHP获å–数组时,你ä¸å¿…担心别å,这将是两ç§æ–¹å¼ã€‚

如果您想è¦ä¸€ä¸ªæ²¡æœ‰é‡å¤æ•°æ®çš„查询,您别无选择,åªèƒ½è‡ªå·±åˆ—出该表的所有列,而ä¸æ˜¯ä½¿ç”¨*

答案 3 :(得分:0)

$query=mysql_query("SELECT DISTINCT `contact_id`,column1,
column2 FROM `survey_response_single`
WHERE text_id = '1' LIMIT 0, 15  "); //You select here the required data 
//of column1,2... and having distinct contact_id values
$execute_query=mysql_query($query,$db_conn);
while($row=mysql_fetch_array($execute_query){
  //use you data
}

答案 4 :(得分:-1)

SELECT DISTINCT `contact_id`  
 FROM `survey_response_single`  
  WHERE text_id = '1' LIMIT 0, 15 

答案 5 :(得分:-1)

星å·ï¼ˆ*)ä¸éœ€è¦

SELECT  DISTINCT `contact_id`  
 FROM `survey_response_single`  
  WHERE text_id = '1' LIMIT 0, 15 

删除*符å·