mysql - mysql 触发器中使用“like”关键字

标签 mysql database triggers

我想在触发器中使用“like” 我有两个表 't1', 't2'

我想检查 t1.col1 是否包含 t2.col1 数据。

我尝试了一些,但在使用类似方式传递值时遇到问题

我用过;

 CREATE DEFINER=`myuser`@`%` TRIGGER `t1_before_insert` BEFORE INSERT ON `t1` FOR EACH ROW BEGIN
set NEW.col2 = IFNULL((select distinct 1 from t2 where new.col1 like **t2.col1%** ),0);
END

现在我很困惑哪个值插入粗体文本

最佳答案

尝试这样

select distinct 1 from t2 where new.col1 LIKE CONCAT('%', t2.col1, '%')  

关于mysql - mysql 触发器中使用“like”关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40122197/

相关文章:

php - 安装没有数据库的Magento

android - SQLite 和数据库初始化

oracle - 将触发器从 Oracle 11g 迁移到 Postgresql 8.4

sql-server - INSERT AFTER 或 UPDATE AFTER 触发器内的回滚是否会回滚整个事务

mysql更新查询不适用于不同的列

mysql - sql多列按最新过滤重复项

mysql - Laravel 将动物与多个标签相关联

php - 在使用 $stmt -> fetch() 之前检查结果

sql - 将表中的数据存储到对象表中

更新后的 MySQL 触发器 - 如果列不为空则更新