mysql 查询的字段来自多个表时的笛卡尔现象和解决不同表同名问题

#会发生笛卡尔乘积现象,表1 m行,表2 n行,结果为mn行,原因是没有有效的连接条件

SELECT NAME,boyName FROM beauty,boys;

#解决笛卡尔现象和不同表同名字段问题

SELECT
    NAME,
    boyName
FROM
    beauty,
    boys
WHERE
    beauty.boyfriend_id=boys.id;

原文地址:https://blog.51cto.com/14437184/2437017

时间: 2024-11-08 16:08:11

mysql 查询的字段来自多个表时的笛卡尔现象和解决不同表同名问题的相关文章

mysql查询某个字段在哪一张表中

SELECT TABLE_SCHEMA, TABLE_NAMEFROM COLUMNS WHERE COLUMN_NAME LIKE '%字段名%'

用mysql查询某字段是否有索引

可以使用SHOW INDEX FROM table_name来查看表的索引,从而查看字段的索引:查询结果中table为表名,key_name为索引名,Column_name为列名 原文地址:https://www.cnblogs.com/lxwphp/p/8797036.html

MYSQL查询某字段中以逗号分隔的字符串的方法

首先我们建立一张带有逗号分隔的字符串. CREATE TABLE test(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),pname VARCHAR(20) NOT NULL,pnum VARCHAR(50) NOT NULL); 然后插入带有逗号分隔的测试数据 INSERT INTO test(pname,pnum) VALUES('产品1','1,2,4'); INSERT INTO test(pname,pnum) VALUES('产

MySql查询某字段中是否含中文

使用length与char_length两个函数 length:是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符 char_length:不管汉字还是数字或者是字母都算是一个字符 对同一字段分别使用length.char_length计算长度,并进行比较长度相同则字段中无汉字,不相同则肯定有汉字 SELECT * FROM nt_users t WHERE LENGTH( REPLACE ( REPLACE (t.LOGIN_NAME, '-', ''), '+', '' )) =

Mysql查询某字段重复值并删除重复值

1.查询重复值: select code,count(*) as count from hospital group by code having count>1; 该语句查询code重复值大于1的记录 2.删除重复: DELETE FROM hospital WHERE id NOT IN (SELECT dt.minno FROM (SELECT MIN(id) AS minno FROM hospital GROUP BY code) dt); 该语句保留id最小的记录,其余code重复的

MySQL查询某个字段为某值的次数统计SQL语句

SELECT GoodID,sum(if(Level = 1, 1, 0)) as Better,sum(if(Level = 0, 1, 0)) as Nomal,sum(if(Level = -1, 1, 0)) as Bad from evaluates GROUP BY GoodID;

mysql 查询某字段值全是数字

select * from x_ziyuan where zy_zhanghu regexp '^[0-9]+$'

mysql查询某个字段并修改

比如我存储的数据,有的是 山东,有的是山东省 我想统一改为山东省 UPDATE t_security SET province = REPLACE( province, '山东', '山东省' ) WHERE province ='山东'; 原文地址:https://www.cnblogs.com/jnhs/p/10046832.html

[MySQL]-->查询5天之内过生日的同事中的跨年问题的解决过程

前言:        遇到朋友提问,如下:SELECT * FROM ali_users WHERE  DATEDIFF(CAST(CONCAT(DATE_FORMAT(NOW(),'%y'),DATE_FORMAT(birthday,'-%m-%d'))AS DATE),CAST(DATE_FORMAT(NOW(),'%y-%m-%d') AS DATE)) <=1上面的可以找到今天或者明天过生日的假设今天是12月31日,这时候来年的1月1日的就找不到了,怎么办? 1,准备测试数据,需要包含跨