社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

仅当选择count>n时才插入MySQL查询

Question • 5 年前 • 1274 次点击  

我有两个问题:

SELECT COUNT(*) FROM a WHERE id = 1
//if row == 1
INSERT INTO a VALUES(fielda) VALUES('value')

有没有办法把这两个查询合并成一个?我尝试使用“if(count>0,….)”和类似的方法,但查询不正确。 这涉及到在表中插入一个新记录,注意不要超过每个字段预先设置的记录数。 理论上,如果……

编辑:

@我试过了,但我想我不明白你写了什么(事实上我在提问中犯了一个错误),我试着这样回答:

THE QUERY AFTER YOUR RESPONSE:
INSERT INTO table1 SELECT MAX(id) FROM table1 WHERE field1 = (SELECT id from a WHERE f = field2) HAVING COUNT(*) = 1 (all fields request) VALUES (all values request)

//field1 = id from table2
//field2 = id from another table: associative value

//ORIGINAL QUERY
//FIRST COUNT:
SELECT COUNT(*) from table1 WHERE field1 = (SELECT id FROM table2 WHERE f = field2)
//AFTER THE INSERT:
INSERT INTO table1 (all fields request) VALUES (all values request)

我想到了这个例子,我试图向大家展示:

table player:字段(id,teamid,name)=>(id=int,teamid=int关联到表team,name=varchar)

表team:fields(id name)=>(id=int,name=varchar)

假设一个团队中的玩家最多为20个,那么您期望同一个teamid值的player表所关联的最多20个记录,或者至少这是我们人类所认为的,因为对于计算机来说也可以是无限的。我正在寻找一种方法,只允许在实际允许插入记录的情况下插入记录,在这种情况下,条件是在球员表中,每个球队的记录少于21条。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38732
 
1274 次点击  
文章 [ 1 ]  |  最新文章 5 年前