查询MYSQL同一个数据库2张表的不同字段值语句怎么写

查询MYSQL同一个数据库2张表的不同字段值语句怎么写,第1张

select log.*,student.name from log left join student on log.id= student.id and log.tim=student.tim

这个是用的左联合的方式

也可以

select log.*,student.name from log,student where log.id= student.id and log.tim=student.tim

题主,你的描述中存在一些难以理解的地方,其中我最大的问题是,你这两张表没有数据和数据的对应关系吗,如果没有的话这个题目的意思其实是某个表里的一个字段的值在另一张表的某个字段中是否存在了?

写好了 发给你自己测试下, 笔记本断网了,专门去同事电脑上发给你的,记得采纳哦

-- 创建测试表

drop TABLE IF EXISTS test

create table test(

id TINYINT primary key,

qid1 CHAR(1),

qid2 CHAR(1),

qid3 CHAR(1),

qid4 CHAR(1)

)

-- 插入测试数据

INSERT into test VALUES (1,'A','A','B','B')

-- 创建存储过程

DROP PROCEDURE IF exists P_test

DELIMITER &&

CREATE PROCEDURE P_test()

BEGIN

DECLARE q1,q2,q3,q4 char(1) DEFAULT ''

DECLARE aNum,bNum TINYINT DEFAULT 0

SELECT qid1,qid2,qid3,qid4 into q1,q2,q3,q4 FROM test

IF q1 = 'A' THEN

SET aNum = aNum+1

ELSE

SET bNum = bNum+1

END IF

IF q2 = 'A' THEN

SET aNum = aNum+1

ELSE

SET bNum = bNum+1

END IF

IF q3 = 'A' THEN

SET aNum = aNum+1

ELSE

SET bNum = bNum+1

END IF

IF q4 = 'A' THEN

SET aNum = aNum+1

ELSE

SET bNum = bNum+1

END IF

SELECT 'A',aNum

UNION

SELECT 'B',bNum

END &&

DELIMITER

-- 调用 就出现你要的结果

CALL P_test()


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7343415.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存