2009-11-19 2 views
0

Я использую SQL.Как объединить несколько строк, где имена полей дублируются?

Вот пример моего стола: (. Есть на самом деле тысячи строк, как эти, с различным числом курсов)

Course No | Meeting Day | Course Name | Instructor 
123  |  M  | English | Smith 
123  |  W  | English | Smith 
123  |  F  | English | Smith 

Мне нужно объединить эти строки в один, как:

123 | MWF | English | Smith 

Возможно ли это? :)

TIA.

+0

Какие таблицы? SQL? Foxpro? – bmargulies

+0

Да, извините. SQL. – 2009-11-19 23:42:30

+0

Какая SQL-база данных вы используете (например, MySQL, MS SQL и т. Д.)? –

ответ

1

В MySQL, вы можете использовать функцию GROUP_CONCAT с GROUP BY:

SELECT 
    course_no, 
    GROUP_CONCAT(DISTINCT meeting_day SEPARATOR '') days, 
    course_name, 
    instructor 
FROM 
    courses 
GROUP BY 
    course_no, course_name, instructor 
+0

Спасибо! Но я в основном стараюсь создать новую таблицу с этой информацией, хотя, можете ли вы мне помочь? – 2009-11-20 00:02:34

+0

Вы можете создать новую таблицу из запроса в MySQL, запустив CREATE TABLE name SELECT ... –

+0

Спасибо большое :) – 2009-11-20 00:29:12

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

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