mysql特有語法 MySql中特有的語法

2021-10-18 01:50:01 字數 1968 閱讀 6270

limit

select*fromtablelimit[offset,]rows|rows offset offset

on duplicate key update

insert [low_priority | delayed | high_priority] [ignore]

[into] tbl_name

set col_name=, ...

[ on duplicate key update col_name=expr, ... ]

handler

handler tbl_name open [ as alias ]

handler tbl_name read index_name (value1,value2,...)

dodo expr [, expr] ...

do用於執行表示式,但是不返回任何結果。

do是selectexpr

的簡化表達方式。

do有乙個優勢,就是如果您不太關心結果的話,

do的速度稍快。

do主要用於執行有***的函式,比如release_lock()。

join

mysql中cross join等同於inner join,多個錶用逗號分隔,在無聯合條件下與inner join是語義相同的。

可以使用straight_join強制左表在右表之前被讀取。straigh_join可以被用於這樣的情況,即聯合優化符以錯誤的順序排列表。

mysql擴充套件了sql標準語法,可以使用下面的方式連線:

select * from t1 left join (t2, t3, t4)on (t2.a=t1.a and t3.b=t1.b and t4.c=t1.c)

相當於:

select * from t1 left join (t2 inner join t3 inner join t4)on (t2.a=t1.a and t3.b=t1.b and t4.c=t1.c);

可以使用using(column_list)子句為一系列的列進行命名。這些列必須同時在兩個表中存在。如果表a和表b都包含列c1, c2和c3,則以下聯合會對比來自兩個表的對應的列:

a left join b using (c1,c2,c3) 《=》 a left join b on a.c1= b.c1 and a.c2=b.c2 and a.c3=b.c3

delete

可以使用delete quick再加上optimize table加快刪除速度;

可以使用limit來限制每次刪除的記錄數,確保乙個delete語句不會占用過多的時間,但從多個表刪除時不能使用limit和order by;

可以一次從多個表中刪除記錄(可以利用多個表查詢):

delete t1, t2 from t1, t2, t3 where t1.id=t2.id and t2.id=t3.id;

或:delete from t1, t2 using t1, t2, t3 where t1.id=t2.id and t2.id=t3.id;

當搜尋待刪除的行時,這些語句使用所有三個表,但是只從表t1和表t2中刪除對應的行。

union

select ...

union [all | distinct]

select ...

[union [all | distinct]

select ...]

預設情況下union代表union distinct。

multiple-tableupdate

update [low_priority] [ignore] table_references

set col_name1=expr1 [, col_name2=expr2 ...]

[where where_definition]

例子:update items,month set items.price=month.price

where items.id=month.id;

mysql中能有 MySql中特有的語法

limit select fromtablelimit offset,rows rows offset offset on duplicate key update insert low priority delayed high priority ignore into tbl nameset c...

OC 特有語法1

asp.net unity開發 net培訓 期待與您交流!一 利用點語法替換set方法和get方法 1.方法呼叫 student stu student new stu setage 10 int age stu age 這是set和get的物件呼叫方法 2 點語法 stu.age 10 int a...

OC特有語法 多型

多型 指標以父類型別宣告,但實際執行時指向的是其某個子類的物件,當用這個指標呼叫方法時,會根據其指向的不同子類物件呼叫不同的物件方法。這種現象叫多型。多型的前提是子類會覆蓋父類的方法。多型的應用 需要乙個新的函式專門用來餵狗 void feed dog d 如果這個時候也需要喂貓,那就應該重寫新乙個...