MySQL版本5表order_detail tmp_id customer_id book_id amount ............ re
--------------------------------------------------------------------------
1 31209 a_3123 100 ... express
2 65098 cx_766 1000 ... air
3 04564 f_34521 800 ... ship
4 31209 cx_766 600 ... express
这张表我想要查询出除第一列外的所有数据,但是假设我这张表除了tmp_id之外,我不知道其他列的具体名称,这样的SQL语句应该怎么写?请各位大大赐教!
--------------------------------------------------------------------------
1 31209 a_3123 100 ... express
2 65098 cx_766 1000 ... air
3 04564 f_34521 800 ... ship
4 31209 cx_766 600 ... express
这张表我想要查询出除第一列外的所有数据,但是假设我这张表除了tmp_id之外,我不知道其他列的具体名称,这样的SQL语句应该怎么写?请各位大大赐教!
select * from order_detail
直接查所以列吧
这个表本来就是从一个已存在的表中查询出来的临时表,临时表要和别的查询结果做union,因为多了一个查询时加上去的temp_id,不能直接做union了。
1,在另外一个查询上也加一个没用常量列
2,利用系统视图把列名查询出来,动态组合sql
select @str :=concat(@str,column_name,',') from information_schema.columns where table_schema='库名' and table_name='表名' and column_name<>'tmp_id';
select @str;
select left(@str,char_length(@str)-1) into @column_list;
select @column_list;
其实可以更简单些。
select distinct c.column_name from information_schema.columns c where c.table_name='TEST' and c.column_name!='ID'如此可以从表TEST中获得除列名ID之外的所有列