資料庫中一些常用SQL使用方法記錄

2021-09-13 09:31:36 字數 2510 閱讀 1485

1. 命令列建立乙個表並建立使用者, 再授權訪問

# mysql

create databse short_url_db default character set utf8 collate utf8_unicode_ci ;

create user 'short_url_user'@'%' identified by 'welcome';

grant all on short_url_db.* to 'short_url_user'@'%';

2. 以乙個已經存在的表作為模板, 建立乙個新錶
# mysql

create table like # postgres

create table (like including all)

3. 修改乙個庫的字元編碼和字符集
# mysql

##1.先查詢庫(schema)的編碼和字符集

elect default_character_set_name, default_collation_name from information_schema.schemata where schema_name = ;

##2.進行修改

alter database character set utf8mb4 collate utf8mb4_unicode_ci;

# postgres

4. 修改一張表的字元編碼和字符集
# mysql

alter table convert to character set utf8mb4 collate utf8mb4_unicode_ci;

# postgres

1. 批量修改某張表裡面的一些資料
# 將某乙個字段內容的字首進行統一修改

update tanm

inner join (

select

no_mode_id,

case

when gen_pattern like 'f:t%' then

concat(

'f:d',

substring(gen_pattern, 4)

)else

concat(

'f:d',

substring(gen_pattern, 3)

)end as gen_pattern

from

) v on tanm.no_mode_id= v.no_mode_id

set tanm.gen_pattern = v.gen_pattern

1. 乙個表中包含乙個業務sort欄位, 由於一些原因導致出現了多個記錄具有相同sort的錯誤資料,現在就需要重新設定sort欄位,保證不重複;
drop procedure if exists resetsort;

create procedure resetsort()

begin

declare _id bigint default 0;

declare i int default 0;

declare cnt bigint default 0;

declare ids cursor for select id from health_product_catalog where is_delete = 0 order by ctl_sort asc;

select count(1) into cnt from health_product_catalog where is_delete = 0;

open ids;

while i<=cnt do

fetch ids into _id;

set i = i + 1;

update health_product_catalog set ctl_sort = i where id = _id;

end while;

close ids;

end;

call resetsort();

update health_product_catalog x,

health_product_catalog y,

(select

a.id, ctl_sort

from

health_product_catalog a

where

a.is_delete = 0

and ctl_parent_id = #

order by a.ctl_sort asc

order by a.ctl_sort desc

# ]]>

order by a.ctl_sort asc

order by a.ctl_sort desc

limit 1

) vset x.ctl_sort = v.ctl_sort,

y.ctl_sort = #

where x.id = #

and y.id = v.id

資料庫中一些基礎概念

一些重要的概念 資料 資料是描述事物的符號。資料無處不在 資料庫 資料庫就是資料存放的地方。資料庫是資料和資料庫物件的集合。所謂資料庫物件是指表 檢視 儲存過程 觸發器等 資料庫管理系統dbms 資料庫管理系統是用於管理資料的計算機軟體。資料庫管理系統使使用者能方便的定義和運算元據,維護資料的安全性...

資料庫 資料庫sql一些操作

空關係 none 方法返回可以在鏈式呼叫中使用的 不包含任何記錄的空關係。在這個空關係上應用後續條件鏈,會繼續生成空關係。對於可能返回零結果 但又需要在鏈式呼叫中使用的方法或作用域,可以使用 none 方法來提供返回值。article.none 返回乙個空 relation 物件,而且不執行查詢 下...

執行緒中一些常用方法的分析

join 在乙個執行緒中呼叫另乙個執行緒的join 則當前執行緒阻塞,讓另乙個執行緒先執行後,當前才執行.根優先順序無關.從某種意義上來說,要兩個執行緒都執行這個方法才有作用 package test1 public class test7 class mythread1 implements ru...