交换数据库表的值

时间:2015-08-28 06:33:03

标签: sql sql-server sql-server-2008

我有一个表,其中包含用户可见的属性列表。但是我以错误的格式插入数据,我想在不创建临时表的情况下将[ActionName]的值与[ControllerName]交换。

 SELECT [MenuID]
          ,[MenuName]
          ,[MenuMasterID]
          ,[ActionName]
          ,[ControllerName]
          ,[ImageClassName]
          ,[MainOrderID]
          ,[SubOrderID]
      FROM [DEV_CMS_Medical].[dbo].[SEC_Menus]

4 个答案:

答案 0 :(得分:1)

如果您只想在查询时交换

,请使用分配/别名
 SELECT 
       t.[MenuID]
      ,t.[MenuName]
      ,t.[MenuMasterID]
      ,[ActionName] = t.[ControllerName]
      ,[ControllerName] = t.[ActionName]
      ,t.[ImageClassName]
      ,t.[MainOrderID]
      ,t.[SubOrderID]
  FROM [DEV_CMS_Medical].[dbo].[SEC_Menus] t;

如果需要交换基础数据,请使用更新:

UPDATE [DEV_CMS_Medical].[dbo].[SEC_Menus] 
SET [ActionName]      = [ControllerName]
    ,[ControllerName] = [ActionName];

答案 1 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval" >

    <corners android:radius="2dip" />

    <stroke
        android:width="2dip"
        android:color="#FF0000" />

    <solid android:color="#FF0000" />

    <size
        android:height="25dp"
        android:width="15dp" />

</shape>

或者,如果您想要显示没有任何操作的数据,只需使用所需列的别名

答案 2 :(得分:1)

array(
       'Group 1' => array(
           1 => 'Feature Entity Object 1',
           2 => 'Feature Entity Object 2',
       ),
       'Group 2' => array(
           3 => 'Feature Entity Object 3',
           4 => 'Feature Entity Object 4',
       )
   ) 

答案 3 :(得分:0)

您可以尝试重命名列名,如下所示:

sp_RENAME 'TableName.[OldColumnName]' , '[NewColumnName]', 'COLUMN'

为此,您需要先将OldColumnName设置为某个虚拟名称。像这样:

sp_RENAME '[SEC_Menus].[ActionName]' , '[ControllerNameDummy]', 'COLUMN'