草庐IT

php - 内部加入 3 个表

我正在使用PHP和PDO,我需要记住连接3个表的信息:照片专辑相册_照片表格结构如下:照片:photo_id(int)path(varchar)nick(varchar)date(timestamp)专辑album_id(int)album_name(varchar)nick(varchar)date(timestamp)相册_照片album_id(int)photo_id(int)nick(varchar)date(timestamp)因此,我想显示所有相册,每个相册最多包含5张照片,用户昵称是“所有者”。显示如下:album_name_1:[photo_1][photo_2][ph

mysql - 如何提高从 2 个表中进行选择的 SQL 查询的性能

请帮帮我,如何加速这个sql查询?SELECTpa.*FROMParametrickeVyhladavaniepa,(SELECTp.*FROMproduktypWHEREp.KATEGORIAIN('$categoryArray'))produktWHEREprodukt.ATTRIBUTE_CODELIKECONCAT('%',pa.code,'%')ANDprodukt.ATTRIBUTE_VALUELIKECONCAT('%',pa.ValueCode,'%')GROUPBYpa.code索引:pa.code,pa.ValueCode,p.ATTRIBUTE_CODE,p.AT

php - 填充第三个表以保持效率

我目前正在为一个PHP/MySQL项目工作。在完成作业时研究数据库的高效设计时,我注意到在许多情况下,在仅处理两组数据时创建第三个表是一种很好的做法。例如,如果我们有一张“学生”表和一张“地址”表,创建第三张表似乎是个好主意,即“Student_Addresses”,因为假设一个学生可以有多个地址(分开parent等),一个地址可以代表多个学生(sibling)。我的问题是:我们如何着手填充第三个表?有没有一种方法可以使用主键和/或外键自动完成?我试过谷歌和我的教科书来理解这一点,但我一无所获。非常感谢指向教程或文章的链接。感谢您的帮助。我希望问题和例子很清楚。

mysql - 3个表相互依赖时外键的工作方式

我有tableitemsproductsbrands它们的内容:products:-samsunggalaxys2-iphone5brands-samsung-appleitem和product的区别如下:产品可以说是iPhone。item是特定用户的特定iPhone,具有自己的属性,例如颜色和购买价格。产品iPhone具有Apple的品牌/制造商。当插入一个新商品时,我希望数据库从该商品所属的产品中获取品牌,所以我的外键是这样设置的:'db_name`.'products'.`productBrand`我有两个品牌的ATM-三星和苹果。当我尝试通过phpMyAdmin的界面插入一个新

mysql - 如何根据not条件连接2个表的结果

我有2个表,比如TableA和TableB定义如下:createtableTableA(idint,namevarchar(20),partNumbervarchar(30));值为:insertintoTableAvalues(1,'a1','10');insertintoTableAvalues(2,'a2','20');insertintoTableAvalues(3,'a3','30');insertintoTableAvalues(4,'a4','40');createtableTableB(idint,namevarchar(20),partNumbervarchar(30

php - 1个表中的SQL连接列

我正忙于编写显示交易的脚本。我想编写一个SQL查询,在一行中设置所有内容。这是SQL:SELECTtransactienummer,codeFROMgb_kaartenORDERBYtransactienummerDESCLIMIT4这是输出:transactienummercode431411600431414410431411513431411514我只想有一行看起来像这样:transactienummercode431411600441015131514我尝试了一些连接,但我似乎不明白。感谢正手的帮助 最佳答案 我假设你正在使

mysql - SQL - 来自 3 个表的结果,聚合函数

我正在尝试为以下结果创建SQL查询:id,name,Usersingroup,Messagesingroups,Messagetype1ingroups,Messagetype2ingroups1Group143212Group232113Group11110我的数据库:createdatabaseuser_test;useuser_test;CREATETABLE`user`(`id`BIGINTNOTNULLAUTO_INCREMENT,`name`VARCHAR(50)NOTNULL,`group_id`BIGINTNOTNULL,PRIMARYKEY(`id`));CREATE

带有 SUM 和 3 个表的 MySQL JOIN

我有下表(玩家、事件、分数)我想要一份每个球员在2012年获得多少分的列表。我希望列表包含所有球员,即使有些球员在2012年没有参加过比赛。所以理论上它应该打印:OlaHansen6ToveSvendson0KariPettersen0我试过:SELECT*,sum(Points)asPointsFROMPlayersLEFTOUTERJOINScoresONP_Id=PlayerLEFTOUTERJOINEventsONEvent=E_IdANDYear='2012'GROUPbyP_IdORDERbyPointsDESC但这计算了所有年份的所有积分。 最

mysql - 如何找出我的数据库中有多少个表?

我想知道我的数据库服务器中有多少个表,它们是什么。 最佳答案 您可以通过执行以下SQL命令从某个数据库中请求表:USE;SHOWTABLES;希望对您有所帮助。 关于mysql-如何找出我的数据库中有多少个表?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/13831521/

MySQL:更好的是拥有数百万行的少数表或具有数百行的数千个表

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我正在构建一个Web应用程序,我想从一开始就让它扩展。我对数据库的可扩展性不是很了解,我面临着这样的疑问:我应该使用少数具有数百万行的表格,还是应该将数据分成数百个表格(如果不是数千个表格,预计有数百行)。两种方法我都可以接受,但我不知道从长远来看哪一种会更好。我找到了一些关于这方面的信息,但没有太大帮助:MySQLWhatsbetterforspeedo