SQL代码从Tb中调用所有列,期望可以使用As调用的一列?



我当前的代码如下:我想使用*从表中调用所有列,但idcastncrew列名应该像castncrewid一样显示。在需求代码中,它不起作用,我希望有一个解决方案来满足我的需求,比如示例需求代码。

当前代码:

SELECT idcastncrew AS castncrewid,castncrewname,castncrewtype,castncrewrole,imagelink,vendor,mode FROM subscriber;

要求:-

SELECT idcastncrew AS castncrewid, * FROM subscriber;

我认为你能得到的最接近的是重新命名的列两次,一次用新名称,一次用旧名称。

而MySQLnot允许*在别名列之后(导致您的第二个代码片段给出错误),它允许table.*在任何地方…

SELECT idcastncrew AS castncrewid, subscriber.*  
FROM subscriber;

re-iterate;你仍然会得到一个idcastncrew列,但你也会得到一个castncrewid列。

在MySQL中使用*时没有办法说don't include *this* column

https://dbfiddle.uk/?rdbms=mysql_5.7&小提琴= c69c537e46ad29e3c0c8c03d3ebd1bf7

在为表添加别名时可以为列添加别名,示例如下

MariaDB [DEV]> create table xxx (id int, str varchar(20));
MariaDB [DEV]> insert into xxx values (1, 'hi');
MariaDB [DEV]> insert into xxx values (2, 'Hello');
MariaDB [DEV]> insert into xxx values (3, 'World');
MariaDB [DEV]> insert into xxx values (4, 'Goodbye');
MariaDB [DEV]> select a.id as id1, a.* from xxx a order by 1;
+------+------+---------+
| id1  | id   | str     |
+------+------+---------+
|    1 |    1 | hi      |
|    2 |    2 | Hello   |
|    3 |    3 | World   |
|    4 |    4 | Goodbye |
+------+------+---------+

相关内容

  • 没有找到相关文章