2012-03-12 4 views
0

мне было интересно, если есть способ сделать что-то вроде выбора всех без ... некоторых столбцов здесьSELECT, команда в MySQL

что-то вроде SELECT */column1, COLUMN2, есть способ сделать это? мне просто нужно выводить что-то вроде

column1, COLUMN2 (из другой таблицы), здесь все остальные столбцы без column1 (или что-то, чтобы сделать выбор пропустить первые несколько столбцов)

EDIT: Дело в том, что мне нужно, чтобы это было динамичным, поэтому я не могу просто выбрать то, чего не знаю. Я никогда не знаю, сколько будет столбцов, я знаю только 1-й и 2-й столбцы

EDIT: вот картинка http://oi44.tinypic.com/xgdyiq.jpg Мне не нужен второй столбец id, только последний столбец, как я указал.

+0

Я Фрайд вы не можете :( – dotoree

+0

http://dev.mysql.com/doc/refman/5.0/en/selecting-columns.html –

ответ

1

О, так что выберите все, кроме определенных полей. У вас есть два варианта.

Один из них немного медленный .. Скопируйте таблицу, отбросьте поля, которые вы не хотите, затем SELECT * Другой - создать список полей из подзапроса в информационную_схему или что-то еще, а затем удалить вхождения 'field_i_dont_want 'в этом списке.

SELECT (SELECT THE TABLES YOU WANT AND CONCAT INTO ONE STRING) FROM TABLE 
0

Если у вас есть столбцы «n» в таблице, как в Col1, Col2, Col3 ... Coln, вы можете выбрать любые столбцы, которые вы хотите выбрать из таблицы.

SELECT Col1,Col2 FROM YOURTABLE; 
+0

Это не то, что он просит ... – nico

0

Вы либо выбираете все столбцы (*), либо выделяете столбцы, которые хотите по одному. Невозможно выбрать «все, кроме некоторых».

0

Язык SQL позволяет вам выбрать набор подстановочных знаков из колонок или перечисленных отдельных столбцов из уникальной таблицы. Однако вы можете присоединиться к вторичной таблице и получить подстановочный знак.

SELECT 
    a.col1, 
    b.* 
FROM 
    table_a as a 
JOIN table_b as b ON (a.col5 = b.col_1) 
2

Начать создание пользовательских представлений, которые предназначены для экономии времени разработчиков и их инкапсуляции из схемы базы данных.

1

Если вам нужно объединить записи из нескольких таблиц, вам нужно найти способ связать их вместе. Первичные ключи, внешние ключи или что-то общее.

Я попытаюсь объяснить это с помощью sql, аналогичного вашей проблеме.

SELECT table1.id, table2.name, table1.column3, table1.column4 
FROM table1 
INNER JOIN table2 On table2.commmonfield = table1.commonfield 
+0

У меня есть первичные и внешние ключи. Дело в том, что все, что я хочу сделать, это: ЗАМЕНИТЕ внешний ключ (в главном столе) с тем, что он указывал (во второй таблице). две таблицы в одном. – Jordashiro

+0

@ Jordashiro, отлично, теперь обновите свой вопрос своей схемой. Я сразу же предоставил рабочее решение;) – Starx

+0

По внешнему ключу я говорил о столбце с заменяемым внешним ключом. – Jordashiro