Mam pytanie dotyczące SQL. (Diagram bazy dołączony)

Mam napisać zapytanie które odpowiada na pytanie

Który z pracowników obsłużył zamówienia o największej wartości w 1997r, podaj jego imię i nazwisko



select
```**```
 top 1 Employees.FirstName, Employees.LastName, 
```**```
sum
```**```
([
```**```
Order
```**```
 Details].Quantity*[
```**```
Order
```**```
 Details].UnitPrice) suma

```**```
from
```**```
 Employees 
```**```
inner
```**```
 
```**```
join
```**```
 Orders 
```**```
on
```**```

Employees.EmployeeID = Orders.EmployeeID 
```**```
join
```**```
 [
```**```
Order
```**```
 Details] 
```**```
on
```**```

Orders.OrderID = [
Pobierz
źródło: comment_rMJq6SgB9HV58EgjsqUdWkpuAw64mZjE.jpg
@kmicolo: Oracle PL/SQL Programming (online można pobrać ;) ) , Mastering Oracle PL/SQL (online), Oracle Database 11g PL/SQL Programming Workbook , Beginning PL/SQL: From Novice to Professional , Oracle Database 11g PL/SQL Programming

Tego jest tyle, że google pęka.

Ah zapomniałbym RTFM Oracle PL/SQL
#programowanie #sql

Cześć,

Mam taką funkcję w postgresql:

CREATE OR REPLACE FUNCTION production_insert_function()

RETURNS trigger AS

$BODY$

begin

NEW.production_date := localtimestamp; _
_
return new;_
_
end;_
_
$BODY$_
_
LANGUAGE plpgsql VOLATILE_
_
COST 100;_
_
ALTER FUNCTION production_insert_function()

OWNER TO postgres;

Jednak chciałbym zrobić dwie osobne funkcję, jedna uzupełniała by datę stworzenia obiektu w bazie w postaci rok-miesiąc, a druga taka sama funkcja tylko by tworzyła dzień powstania. Czyli byłby
@pulla: 1. Załóż index na productiondate

2. Wtedy możesz użyć zakresów aby wyciągnąć dane z danego dnia lub miesiąca np. WHERE production
date >= '2014-11-11 00:00:00+02' AND production_date < '2014-11-12 00:00:00+02'

3. Oczywiście Twoim sposobem też się da, ale po co
#sql #oracle #bazydanych

Mam problem otóż mam w bazie użytkownika hr i ona ma swoje tabele ( employees, regions etc. ). Tworzę sobie nowego użytkownika i chcę mu dać prawo podglądu WSZYSTKICH tabel w całej bazie jak ma być wtedy skonstruowany GRANT ?

bo np kiedy zrobię:

GRANT SELECT on hr.employees to user1 to działa ale nie za bardzo wiem jak odwołać się do tabel w całej bazie ( dbatables, all
Mam pytanie. Załóżmy, że mam tabelę w MS SQL, gdzie trzymam połączenia jeden do wielu.

ID parent - ID

Przykładowe wiersze to:

1 | 2

1 | 3

1 | 4

2 | 2

2 | 3

Jak przekształcić tę tabele w wynik, który w pierwszej kolumnie będzie podawał ID parent, a w drugiej kolumnie po przecinku kolejne ID podległych elementów. Czyli powyższa tabela zamieniłaby się na:

1 | 2, 3, 4
#wordpress #sql

Zainstalowałem na subdomenie czystego wordpressa. Utworzył sobie we własnej bazie SQL wymienione niżej tabele:

*_commentmeta

*_comments

*_links

*_options

*_postmeta

*_posts

*_terms

*termrelationships

*termtaxonomy

*_usermeta

*_users

Żadnej z nich nie ma w starej bazie sql, którą chcę przenieść. Jak może funkcjonować wordpress bez podstawowych na to wychodzi tabel? Gdzieś mogą być ukryte?
@netes: na serwerze są tylko pliki wordpressa, a w bazie sql joomli xD

dam wp-config.php, może coś tu siedzi:

//Added by WP-Cache Manager

define('WP_CACHE', true); //Added by WP-Cache Manager_
_
define( 'WPCACHEHOME', '/home/accounts_d/drugiobieg/public_html/wp-content/plugins/wp-super-cache/' ); //Added by WP-Cache Manager_
_
define('DB_NAME', 'drugiobieg');

/** MySQL database username */

define('DB_USER', 'drugiobieg');

/** MySQL database password */

define('DB_PASSWORD', 'xxxx');

/** MySQL hostname */

define('DB_HOST', 'sql5.boo.pl');

/** Database Charset to use in creating database tables. */
Zagadnienie formalne z projektowania baz danych:

Mam w bazie danych obiekt "płatnej subskrypcji". Za taką subskrypcję użytkownik może zapłacić sobie sam, albo może mu zapłacić organizacja. Zazwyczaj taki problem rozwiązywałem w taki (lub zbliżony) sposób:

table Subscription_payer (

subscriptionId int, -- subskrypcja, za którą zapłacono

payerType enum('user', 'organisation'), -- rodzaj płatnika

payerId int -- identyfikator płatnika w odpowiedniej tabeli

)

W bazach robionych przez innych również tak to rozwiązywano.

Problemem, przynajmniej w
Nie mam to pomysłu...

Potrzebuję użyć operatora IN w złączeniu. Mam sobie tabelę, gdzie kolumna idList ma postać stringa o postaci np: '1,2,3'.

chciałbym tą tabelę złączyć w taki sposób:

.. FROM tabela LEFT JOIN innaTabela ON innaTabela.id IN tabela.idList ...

ta metoda oczywiście nie działa, ale może jakoś inaczej do tego podejść?

Od razu powiem, że "tabela" nie jest tabelą, tylko widokiem, w której idList jest agregatem group_concat, żeby mi ktoś
@msq: ewidentnie Ty masz z czymś problem. Nie mam zamiaru nikomu za to płacić bo ma to służyć tylko mi. Jedyne czego chciałem się dowiedzieć to czy warto spróbować mongo dla przykładu który podałem w pierwszym poście. Z tą migracją może trochę przesadziłem bo pewnie będę to tworzył od nowa - nie jest to wielka baza, ma mi tylko pomóc w pracy. Piątek jest - wyluzuj trochę.
@banex: Nie mam juz cierpliwosci dzis do ludzkiej ignorancji. Skoro ma sluzyc tylko Tobie bo te teksty o produkcji byly chyba troche na wyrost.

To dwa bardzo rozne rozwiazania. Poczytaj troche najpierw. Bo jak na razie to pytanie brzmi troche jak: czy moge ladowac telefon bezposrednio z gniazdka bez ladowarki bo powinno byc szybciej

SQL Server to RDBMS, MongoDB to baza NoSQ, nie obclugujaca ACID (z tego co sie orientuje).
PL/SQL: The Scripting Language Liberator

This presentation walks through a web application to show how PL/SQL can be integrated for better logic encapsulation and performance; how Oracle’s supplied packages can be used to enhance application functionality and reduce application complexity; and how to efficiently use scripting language connection and statement handling features to get better performance and scalability.

Techniques shown in this session are applicable to mobile, web, or midtier applications written
@aseeon: PostgreSQL jest zajebisty, bardzo ubolewam ze nie mam w tej chwili czasu posiedziec nad jego PL/PgSQL

No i czy ja wiem czy inni..? Dawno temu robilem aplikacje z podobna logika tyle ze w MySQL. Wiem ze chlopaki u nas maja podobnie jesli chodzi o SQL Server - mocno klepia w TSQL czy jak to sie tam nazywa....

A devy frontendu to czesto tylko

SELECT *

INSERT

UPDATE

i nic wiecej.
Mam taki problem z Accessem i SQLem. http://stackoverflow.com/questions/26651367/docmd-runsql-use-transaction-equivalent-in-adodb-command

Może ktoś się spotkał i potrafi pomóc?

W skrócie chodzi o to, że używając DoCmd.RunSQL mogłem ustawić parametr Use Tranactions na false. I czy ejst odpowiednik tego podczas używania ADODB.command i wykonywania tej komendy, żeby nie używało traksakcji?

#sql #access #msaccess #programowanie
Facebook open sources project that lets you view your OS as a relational database

Using osquery, common operating system characteristics like running processes, drivers and open network connections can be viewed as SQL tables, which allows users to run SQL queries on them to discover potential problems and troubleshoot errors.

https://gigaom.com/2014/10/29/facebook-open-sources-project-that-lets-you-view-your-os-as-a-relational-database/

Introducing osquery

https://code.facebook.com/posts/844436395567983/introducing-osquery/

Github

https://github.com/facebook/osquery

#bazydanych #sql #technologia

#msqspam
W nocy skończyłem i wrzuciłem na serwer paczki z wersją beta SQLiteStudio w wersji 3. Apka w całości napisana w C++ i Qt. Działa na Windowsie, Linuksie i MacOSX'ie. Poprzednia wersja była w Tcl/Tk - wyglądała (delikatnie to ujmując) "tak sobie". Licencja to nadal GPL.

Więcej szczegółów i linki z paczkami są na forum: http://forum.sqlitestudio.pl/viewtopic.php?f=19&t=924

Póki co paczki odpalałem tylko na swoich maszynach, nie wiem na ile uniwersalne są, tak że jak
Miśki, mam mały problem z #sql #bazydanych.

A mianowicie mam na dodatkowe punkty napisać zapytanie łączące pięć tabel.

Takie coś wymodziłem:

select Products.ProductID as 'ID produktu' ,

orders.OrderID as 'ID zamówienia',

Products.ProductName as 'Nazwa produktu',

Products.UnitPrice * Products.UnitsInStock as 'cena całości produktów',

Categories.CategoryName as 'Nazwa kategorii',

Suppliers.CompanyName 'Nazwa dostawcy',

suppliers.Phone as 'telefon dostawcy',

Customers.CustomerID

from Products join Categories on Products.CategoryID = Categories.CategoryID

join Suppliers on Products.SupplierID = Suppliers.SupplierID

join [Order Details]
@GrabkaMan

select Products.ProductID as 'ID produktu' ,

--orders.OrderID as 'ID zamówienia',

Products.ProductName as 'Nazwa produktu',

Products.UnitPrice * Products.UnitsInStock as 'cena całości produktów',

Categories.CategoryName as 'Nazwa kategorii',

Suppliers.CompanyName 'Nazwa dostawcy',

suppliers.Phone as 'telefon dostawcy'

--Customers.CustomerID

from Products

join Categories on Products.CategoryID = Categories.CategoryID

join Suppliers on Products.SupplierID = Suppliers.SupplierID

join [Order Details] on [Order Details].ProductID = Products.ProductID

join Orders on [Order Details].OrderID = Orders.OrderID

join Customers on Orders.CustomerID = Customers.CustomerID

group by

Products.ProductID,
@GrabkaMan:

Ok, po pierwsze - jaka to baza? MySQL? PostgreSQL? Oracle? DB2? SQL Server..?

Po drugie - mozesz to zrobic albo szybko albo dobrze. Szybko - po prostu dodaj slowo DISTINCT tuz po pierwszym SELECT

Dobrze - przejrzyj swoje zlaczenia bo nie bez podowu masz wiecej rekordow niz oczekujesz.