2014-06-25 167 views
0

如果SQL查詢包含我需要的所有字段,它將會非常大。 如何在SQL查詢我可以選擇字段從F3到F 100和從F150到F200?MySQL:選擇多個字段

SELECT F3 to F100, F150 to F200 FROM database; 

有可能嗎? 表結構的變化是不可

+0

SELECT * FROM database –

+4

這聽起來像一個糟糕的桌子設計。有可能改變它嗎? –

+0

我不認爲你可以擁有快捷方式,並且像@juergen所說的似乎是一個糟糕的桌子設計。你可以發佈你的表格結構嗎? – Haris

回答

0

你必須:

1-手動選擇所有列。或

2-做

Select * from database 

然後只取你需要的列。

0

有沒有捷徑,你將不得不列出需要這樣或那樣的字段。

CREATE VIEW SomeView AS 
SELECT 
    F3, 
    ... 
    F100 
FROM 
    SomeTable 

,然後選擇這樣的:如果所選擇的領域始終是相同的,你應該是爲創建視圖

SELECT * FROM SomeView 

但同樣,你必須至少列出領域一旦。

0

選擇F3到F100,F150到F200 FROM數據庫;

此查詢可不可能..

您必須指定所有列名

喜歡選擇F1,F2,從數據庫F3;

0

你不能。

但是,如果它無法修改表結構修復數據庫設計問題,你可以使用一個SQL查詢來生成MySQL查詢:

SELECT CONCAT('SELECT ', GROUP_CONCAT(COLUMN_NAME), ' FROM `your table`') 
FROM information_schema.COLUMNS 
WHERE TABLE_SCHEMA = 'your schema' and TABLE_NAME = 'your table' 
GROUP BY TABLE_NAME 

添加在WHERE只選擇所需的過濾器領域。