mysql三表連線查詢以及百分數排序
表結構:
User(UID,Uname,Uage,Usex)使用者表
Product(PID,Pname)產品表
UscSCore(UID,PID,UseSCore)評價表(評價滿分100,60分為及格)
請按產品評價及格率的百分數從高到低排序;
首先分析一下題目以及涉及的問題
- mysql三表連線查詢
- 控制usescore的分數,100為滿分
- 及格率=及格產品數/產品總數
- mysql百分數表示
- 降序排列
接下來我們來建表:
①建立使用者表並插入值
CREATE TABLE User(
UID INT UNSIGNED KEY AUTO_INCREMENT,
Uname VARCHAR(20),
Uage INT,
Usex ENUM('男','女','保密')
);
INSERT User (UID,Uname,Uage,Usex) value(1,'aaa',12,'男'),(2,'bbb',13,'女'),(3,'ccc',12,'男'),(4,'ddd',12,'女');
SELECT * FROM User;
②建立產品表並插入值
CREATE TABLE Product(
PID INT UNSIGNED KEY AUTO_INCREMENT,
Pname VARCHAR(20)
);
INSERT Product (PID,Pname) value(1,'A'),(2,'B');
SELECT * FROM Product;
③建立評價表並插入值
CREATE TABLE UseSC(
UID INT UNSIGNED KEY AUTO_INCREMENT,
PID INT UNSIGNED ,
UseSCore INT -- 評價滿分為100,60分為及格;
)AUTO_INCREMENT=1;
INSERT UseSC (UID,PID,UseSCore) VALUE (1,1,85),(2,2,80),(3,2,75),(4,1,75);
SELECT * FROM UseSC;
建立完三個基本的表之後,我覺得就該三表連線查詢了,
首先使用者表和產品表,使用者與產品是多對多的關係,一種產品可以提供給多個使用者使用,一個使用者也可以使用多個產品;
而評價表的欄位有使用者id,產品id,以及使用者評分,所以我覺得在這裡評價表應該是主表,使用者表和產品表都是從表;
相關文章
- sql 連線查詢例項(left join)三表連線查詢SQL
- MySQL連線查詢驅動表被驅動表以及效能優化MySql優化
- MySql的join(連線)查詢 (三表 left join 寫法)MySql
- MySQL之連線查詢MySql
- MySql中的資料查詢語言(DQL)三:連線查詢MySql
- MySQL之連線查詢和子查詢MySql
- mysql查詢語句5:連線查詢MySql
- MySQL學習-連線查詢MySql
- MySQL8:連線查詢MySql
- 資料庫三表連線查詢怎麼做資料庫
- MySQL join連表查詢示例MySql
- mysql 三表關聯查詢MySql
- mysql三表關聯查詢MySql
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- MySQL內連線查詢語句MySql
- 連線池溢位以及大量查詢系統表的問題
- mysql三張表關聯查詢MySql
- MySQL 連線查詢超全詳解MySql
- PHP連線、查詢MySQL資料庫PHPMySql資料庫
- 連線查詢
- 排序和表連線排序
- mysql三表關聯查詢練習MySql
- 1112跨表連線查詢
- SQL裡3個表的連線查詢SQL
- in子查詢與表連線是否等價?
- 第三章:查詢與排序(下)----------- 3.21基數排序排序
- SQL連線查詢SQL
- oracle 連線查詢Oracle
- 【Oracle】--連線查詢Oracle
- JPA 連表查詢
- MYSQL學習筆記23: 多表查詢(自連線內連線+左右外連線)MySql筆記
- MySQL講義第27講——select 查詢之自連線查詢MySql
- 第三章:查詢與排序(下)----------- 3.19 計數排序排序
- 【由淺入深學MySQL】- MySQL連線查詢詳解MySql
- mysql求交集:UNION ALL合併查詢,inner join內連線查詢,IN/EXISTS子查詢MySql
- mysql常用連線查詢join,left,right,crossMySqlROS
- 《MySQL 入門教程》第 18 篇 連線查詢MySql
- nodejs 連線 mysql 查詢事務處理NodeJSMySql