Как добавить больше столбцов в MySQL запрос - PullRequest
0 голосов
/ 27 марта 2012

У меня есть SQL-запрос:

SELECT DISTINCT tb.SERIAL_NUM, tb.REVISION_NUM, tb.JOB_NUM, tb.JOB_TOTAL, tb.TEST_PROC, tb.BOX_NUM, tb.TEST_BENCH, tb.OPERATOR, tb.SW_REVISION, tb.TEST_DATE, tb.VISUAL_INSP, tb.TEST, tb.STATUS FROM tb
WHERE tb.SERIAL_NUM>=%s  
AND tb.SERIAL_NUM <=%s 
AND tb.TEST = 'Pass' GROUP BY  tb.SERIAL_NUM

Он работает нормально, но в моей таблице есть еще 200 столбцов, которые я хотел бы добавить к этому запросу, например:

SELECT DISTINCT tb.SERIAL_NUM, tb.REVISION_NUM, tb.JOB_NUM, tb.JOB_TOTAL, tb.TEST_PROC, tb.BOX_NUM, tb.TEST_BENCH, tb.OPERATOR, tb.SW_REVISION, tb.TEST_DATE, tb.VISUAL_INSP, tb.TEST, tb.STATUS, column15.....,column215 FROM tb
WHERE tb.SERIAL_NUM>=%s  AND tb.SERIAL_NUM <=%s AND tb.TEST = 'Pass' GROUP BY  tb.SERIAL_NUM

Есть ли простой способ добавить эти столбцы в запрос?

Ответы [ 2 ]

2 голосов
/ 27 марта 2012

почему вы не используете select * вот так

SELECT DISTINCT * FROM <table> WHERE <whereClause>
1 голос
/ 27 марта 2012

Вот другой способ получить все поля. затем скопируйте и вставьте в свой запрос ... схемы / системные таблицы действительно мощные.

SELECT Group_concat(COLUMN_NAME Separator ', ') as allTableFields
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tb'
Group By table_name

Что это делает (или должно делать), так это получить список всех полей из столбцов в базе данных для таблицы tb. затем он группирует их вместе с запятой, а затем пробел в качестве разделителей. Так что результаты должны быть примерно такими:

поле1, поле2, поле3, поле4, поле5, поле6 ... поле215

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