votrieudi

New Member
Joined
Jan 1, 2018
Messages
13
Reaction score
0
conganh10101993 said:
Cảm ơn thím, nãy do em dùng lệnh SELECT nên không được, chuyển qua gọi bằng SQL*PLUS thì oke rồi.



Cảm ơn thím, nhưng em không truncate bảng được ạ. Khách hàng nó giết em chết, DB cả triệu người dùng không làm cách này được ạ.


Trường hợp cụ thể thì thế này :
Database :
- Bang_1 : Col_1, Col_2, Col_3... Col_50
- Bang_2 : Col_1, Col_2, Col_3... Col_50, Time, user
INPUT :
- nvarchar :sql_str Câu lệnh SELECT (EX: 'SELECT Col_1,Col_2..Col_15 FROM Bang_1')
- nvarchar :danhsachcot danh sách các cột ( Ex: 'Col_1, Col_2, Col_3... Col_n')

Yêu cầu :

INSERT vào bảng 2 các value được lấy về từ câu select truyền vào.
Time : time hiện tại,
User: 'Test_User'

KH bảo làm tạm thời là:
INSERT INTO bang_2(danhsachcot) || sql_str ;
Sau đó
Update bang_2... WHERE Time = null AND user = null;

Nhưng KH ko muốn dùng cách này, vì ko đảm bảo câu lệnh UPDATE chạy đúng với các record vừa insert vào.

Thiím nào giúp em với
thêm cái sysdate với user vào rồi là xong rồi mà nhỉ ..
 

kissofdragon1211

New Member
Joined
Sep 30, 2017
Messages
434
Reaction score
2
Luizions said:
Ông muốn giúp thì post dummy data lên mà còn có cái mà xác định ,req rõ ràng còn chưa chắc làm đúng , đưa cái req lơ mơ vậy ai rảnh mà phụ.Tôi làm DBA mà nhìn req của ông cũng ngán
Ông thread chắc fresher data engineer gặp yêu cầu lấy dữ liệu từ bảng với số cột là 1 biến. Cái này search 1 chút là ra thôi. Mang đây hỏi làm gì cho lâu.
 

haule_nth

New Member
Joined
Oct 1, 2017
Messages
142
Reaction score
0
Ké tí sql, nhờ các bác viết dùm câu query này cái, thằng em hỏi bữa h mà chưa xem dùm nó nữa

"Find the most profitable orderID and the revenue from the order"



Db này nhé mấy bác: w3schools .com/sql/trysql.asp?filename=trysql_select_all



Đa tạ
 

conganh10101993

New Member
Joined
Mar 2, 2018
Messages
194
Reaction score
0
votrieudi said:
thêm cái sysdate với user vào rồi là xong rồi mà nhỉ ..
đấy, vấn đề là thêm cách nào á thím?

Câu lệnh SELECT em không được phép sửa, nếu được phép sửa em cũng đã không phải lăn tăn :(

Có phương án là như em đang nói
INSERT INTO bang_2(danhsachcot) || sql_str ;
Sau đó
Update bang_2... WHERE Time = null AND user = null;

Nhưng khách hàng bảo chỉ làm tạm thôi, cách này không đảm bảo toàn vẹn dữ liệu bởi vì có thể có những record khác có Time = null AND user = null mà không phải là những record mình vừa insert vào. :sosad:

kissofdragon1211 said:
Ông thread chắc fresher data engineer gặp yêu cầu lấy dữ liệu từ bảng với số cột là 1 biến. Cái này search 1 chút là ra thôi. Mang đây hỏi làm gì cho lâu.
Chuẩn luôn thím ạ, em gà mờ vụ data này lắm, search google cũng không ra nên mới lên nhờ các cao thủ như thím đây, thím giúp em đi.:pudency:
 

JUchi

New Member
Joined
Oct 2, 2017
Messages
2,116
Reaction score
6
haule_nth said:
Ké tí sql, nhờ các bác viết dùm câu query này cái, thằng em hỏi bữa h mà chưa xem dùm nó nữa
"Find the most profitable orderID and the revenue from the order"

Db này nhé mấy bác: w3schools .com/sql/trysql.asp?filename=trysql_select_all

Đa tạ
Cái profiltable ở đây là revenue cao nhất hay là lợi nhuận thuần cao nhất? Mình chỉ thấy giá thôi chứ không thấy giá nhập giá bán
 

cuncon01

New Member
Joined
Jan 5, 2018
Messages
89
Reaction score
0
conganh10101993 said:
đấy, vấn đề là thêm cách nào á thím?

Câu lệnh SELECT em không được phép sửa, nếu được phép sửa em cũng đã không phải lăn tăn :(

Có phương án là như em đang nói
INSERT INTO bang_2(danhsachcot) || sql_str ;
Sau đó
Update bang_2... WHERE Time = null AND user = null;

Nhưng khách hàng bảo chỉ làm tạm thôi, cách này không đảm bảo toàn vẹn dữ liệu bởi vì có thể có những record khác có Time = null AND user = null mà không phải là những record mình vừa insert vào. :sosad:



Chuẩn luôn thím ạ, em gà mờ vụ data này lắm, search google cũng không ra nên mới lên nhờ các cao thủ như thím đây, thím giúp em đi.:pudency:
Làm biến vậy.
Change 1 cái data giả quăng lên đây.
Rồi người ta giúp cho.
Lằng ằng vcl.
Dummy data mà ko làm dc nghỉ khỏe đi bạn.
 

Chaien at IS

New Member
Joined
Oct 1, 2017
Messages
48
Reaction score
0
haule_nth said:
Ké tí sql, nhờ các bác viết dùm câu query này cái, thằng em hỏi bữa h mà chưa xem dùm nó nữa
"Find the most profitable orderID and the revenue from the order"

Db này nhé mấy bác: w3schools .com/sql/trysql.asp?filename=trysql_select_all

Đa tạ
Select B.OrderId,B.Profit from (Select A.OrderId,SUM(A.Quantity * P.Price) as Profit FROM (SELECT O.OrderId,OD.ProductId,Quantity
FROM Orders O
inner join OrderDetails OD on O.OrderId = OD.OrderId) A
inner join Products P on A.ProductId = P.ProductId
group by A.OrderId) B
order by B.Profit DESC
 

haule_nth

New Member
Joined
Oct 1, 2017
Messages
142
Reaction score
0
JUchi said:
Cái profiltable ở đây là revenue cao nhất hay là lợi nhuận thuần cao nhất? Mình chỉ thấy giá thôi chứ không thấy giá nhập giá bán
Chắc là lợi nhuận thuần thôi, bảng order có productid với quantity của từng order. Mình nghĩ là link qua bên bảng product để lấy giá bán của món hàng r nhân lên nhân lên là dc giá trị đơn hàng. Kêu nó làm thế mà nó kêu làm k ra :sweat:
 

Chaien at IS

New Member
Joined
Oct 1, 2017
Messages
48
Reaction score
0
JUchi said:
Cái profiltable ở đây là revenue cao nhất hay là lợi nhuận thuần cao nhất? Mình chỉ thấy giá thôi chứ không thấy giá nhập giá bán
nghĩ nhiều làm gì, đề thế nào cứ làm thế thôi
 

JUchi

New Member
Joined
Oct 2, 2017
Messages
2,116
Reaction score
6
haule_nth said:
Chắc là lợi nhuận thuần thôi, bảng order có productid với quantity của từng order. Mình nghĩ là link qua bên bảng product để lấy giá bán của món hàng r nhân lên nhân lên là dc giá trị đơn hàng. Kêu nó làm thế mà nó kêu làm k ra :sweat:
Chaien at IS said:
nghĩ nhiều làm gì, đề thế nào cứ làm thế thôi
Vấn đề nó khác nhau ở dimension với fact.
Nếu là max revenue thì dễ rồi sum và group by cái revenue - order id.
Nhưng nếu là profit lợi nhuận thuần thì phải có giá bán - giá vốn. Cái này không có giá vốn
via vozForums for iPhone
 
Top