如何在選擇查詢期間排除字段?

發布 科技 2024-05-24
7個回答
  1. 匿名使用者2024-02-11

    如果是sqlserver,則所有表名和列名都儲存在其中,可以使用以下語句進行查詢:

    declare @columnlist varchar(8000), tablename varchar(255) - 定義兩個變數。

    select @columnlist = ' ', @tablename= '要查詢的表的名稱'--變數賦值。

    select @columnlist=@columnlist+name+ ', ' from where object_id = object_id(@tablename) and name<>'要剔除的列表名稱'--遍歷查詢所需的所有列(減去不需要的列)。

    select @columnlist=left(@columnlist,len(@columnlist)-1) - 刪除構造語句中的最後乙個“,”符號。

    exec( 'select '+@columnlist+ ' from '+@tablename) - 執行動態語句。

    嘗試。

  2. 匿名使用者2024-02-10

    1. 建立乙個測試表,這裡我們以建立 6 個字段為例,如果有 100 個字段,操作類似,建立表 test sel cols(id number, password varchar2(200), remark1 varchar2(100), remark2 varchar2(100), remark3 varchar2(100), remark4 varchar2(100));

    2、通過系統檢視檢視表結構; 您可以看到新建立的表的所有字段;

    select * from user_tab_cols t where table_name = test_sel_cols';

    3.編寫SQL以從檢視中刪除所有帶有密碼的字段;

    select 'select '|listagg(column_name, 'within group(order by column_id) |from test_sel_cols'知芹 str from user tab cols t where table name = test sel cols'和列名 <> 李森'password'干擾完成;

    4. 複製上一步的查詢結果,生成所需的 SQL,如下所示:

    select id, remark1, remark2, remark3, remark4 from test_sel_cols

    可以發現密碼字段丟失;

  3. 匿名使用者2024-02-09

    1. 建立乙個測試表,這裡我們以建立 6 個字段為例,如果有 100 個字段,操作類似,建立表 test sel cols(id number, password varchar2(200), remark1 varchar2(100), remark2 varchar2(100), remark3 varchar2(100), remark4 varchar2(100));

    2、通過系統檢視檢視表結構; 您可以看到新建立的表的所有字段;

    select * from user_tab_cols t where table_name = 'test_sel_cols';

    3.編寫SQL以從檢視中刪除所有帶有密碼的字段;

    select 'select '||listagg(column_name, ',') within group(order by column_id) |' from test_sel_cols' str from user_tab_cols t where table_name = 'test_sel_cols' and column_name <>'password';

    4. 複製上一步的查詢結果,生成所需的 SQL,如下所示:

    select id, remark1, remark2, remark3, remark4 from test_sel_cols

    可以發現密碼字段丟失;

  4. 匿名使用者2024-02-08

    如果你想用一句話來寫,你必須乙個乙個地列出所有 99 個字段。

    但是您可以使用動態語句來變得懶惰。

    declare @cols as varchar(4000)

    select @cols = isnull(@cols,'') +name +',' from syscolumns s

    where 1=1 and id = (select id from sysobjects where name ='yourtable') -and name <>'填寫您在此處排除的字段'

    set @cols = left(@cols,len(@cols)-1 )

    exec ('select ' + cols + ' from yourtable')

    注意:這是 tsql**,僅適用於 mssql

  5. 匿名使用者2024-02-07

    你想要的方式不存在,查詢語句的查詢列表只有兩種情況

    from [tablename] - 查詢所有列。

    a, b, c from [tablename] - 查詢指定的列。

  6. 匿名使用者2024-02-06

    沒明白你的意思。

    不能直接查詢表中的資訊嗎?

    select

    from user_col_commentswhere table_name = upper( '表的名稱');

  7. 匿名使用者2024-02-05

    這應該是唯一的辦法。

相關回答
2個回答2024-05-24

過多的鉛會導致孩子智力低下、學習成績下降、多動症、注意力不集中、衝動和任性。 >>>More

3個回答2024-05-24

我,你,有希望。

首先,你要公司的產品,而且支付到個人賬戶,是不正常的,為什麼不是公司賬戶呢? >>>More

5個回答2024-05-24

應該做哪些檢查來排除腎臟疾病? 因此,腎功能不全一般是晚期腎病的表現,腎功能正常並不排除腎炎的可能。 如果確實是腎臟受損,就要補充優質的動物蛋白,吃肉最好先吃魚。

7個回答2024-05-24

一些方便快捷的專利查詢**或專利查詢平台如下: 1.國家智財權局的平台 2.智慧芽專利查詢平台 3.智慧芽專利查詢平台為專利檢索、分析和管理提供一站式資訊服務平台,公司致力於讓全球更多的組織和機構更高效地了解和使用專利 4.中國國家智財權局是負責專利工作和全面協調涉外智財權事務的最直接下屬機構。擁有專利申請、專利審查、專利保護、專利**、PCT、積體電路、檔案服務、重要新聞、法律法規、國際合作等智財權事務。 >>>More

14個回答2024-05-24

公章和上面的文字有什麼不同的原因是什麼?