mysql之表别名的大用途

学过SQL的人都知道,别名可以大大简化我们的sql代码,其实别名还有一个用途 : 通过取不同的别名,将一个表当成多个表来用

这样听起来可能很懵逼,我用实例说话,看下面测试数据

mysql之表别名的大用途_第1张图片

这是一个测试表family,通过parent_id可以找到上一级,孙子可以找到儿子,儿子可以找到父亲,现在我们要把儿子删掉,那孙子要给父亲抚养,把孙子的parent_id指向父亲,数据少的时候手工修改倒是可以,当数据量大的时候就应该用代码来实现了


LOCK TABLES categories WRITE,categories as c1 WRITE,categories as c2 WRITE;//给测试表加写锁,允许更新,插入 UPDATE categories as c1,categories as c2 set c1.parent_id = c2.parent_id WHERE c1.parent_id = c2.cat_id and c2.cat_id = '2'; DELETE from categories where cat_id = '2'; UNLOCK TABLES;


mysql之表别名的大用途_第2张图片

你可能感兴趣的:(mysql)