Are there any style guideline for BigQuery? - google-bigquery

I work in a team and we have different ways of writing SQL. I want to standardize by implementing SQL Guidelines.
In Python there is PEP8 as a style guide that explains in detail, not only syntax. Does BigQuery SQL also have a fairly detailed style guide? Please share your guidelines if you have one, I'll appreciate that.

Related

How To I Share A Programming Technique?

I have developed (with vb2010) a technique to add several bullet styles to a Rich Text Box in addition to the built-in Dot Bullet. The technique is available to anyone who needs that capability at no cost. I am just interested in giving it to anyone to help in their programming. So my question is how best to make people aware of this package. I have a example demo for anyone who is interested.
Have searched the internet but have not found an answer to my question.

ABAP Real Life Program using guidelines

In ABAP Guidelines is mencioned the package SABAP_DEMOS_CAR_RENTAL with Objects that are used the Guidelines, but I looking for an SAP program using this guidelines.
In general the SAP programs are so bigger and I get lost in the source code, so anyone know some program that are easy to identify the use of Guidelines?
Thank you
I assume that you are trying to learn ABAP Object. If so, you can try this link for example. It's easier to practicing than just reading
http://saptechnical.com/Tutorials/ABAP/OOP/Example2.htm
This site also contains lots of other stuff
Regards,
Binh

Which ETL tool do you recommend? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I am using Oracle as a database. We have decided to use another database and need to use ETL tool to transform the data from Oracle to that database.
I have never worked in any ETL tool and also didn't know about it. After doing some web searching, I found some tools like Pentaho, Clover, Talend etc. But, even after reading on these, I am not able to decide which one to use.
Which is the better tool to get start with, easiest to use, and has good performance?
It's impossible to answer your question without arguing on the migration requirements. Generally speaking, however, the tools your cited are all nice and focus on a particular capabilities set which could help you during the choice:
Talend: it's eclipse-based; this means that it's really powerful, stable and customizable (creating custom components or even entire eclipse plugins, if you want) and standard (ie. the project structure follows the eclipse stack). It's quite-well embeddable, as it produces java code, but this could be an hassle for the newcomer anyway. The drawback is the learning curve: if you don't manage java at all, your learning curve will be VERY steep, but if you have a java developer in your team, Talend would be a great choice.
Penthao: it's another well-estabilished solution. Its ETL tool (named Kettle) is just a component of their wider Business Intelligence open platform, which is really good if you need reporting services, OLAP, data mining and so. It's java-based, but the language is completely hidden, so you don't need to be a java developer to use it efficiently. The major drawback is that Kettle is much harder to extend than Talend. This means: poor connectors/components out-of-the-box, few community-made collections. Integration with existing java application would be REALLY a pain in the neck, too!
CloverETL: I don't use it very often, as it's mostly the younger brothers of the others. Its major advantages are: it's light, easily embeddable and easy to learn. But it's really much less powerful than Talend and even than Kettle.

Netsuite woes: Is there decent reference anywhere? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
I'm hoping this question isn't too obscure cross fingers
I'm looking for a decent reference for netsuite scripting and api (both of which are based on ASP)
does anybody know where to find this stuff? The netsuite help pages are mediocre at best, and the forums aren't very active. (I suppose these two things are already bad signs, but it's worth a try right?)
As a ex NetSuite employee I was frustrated by this time and time again, even internally there is no good refs other than the published pdf's in dev docs.
One of the best places for snippets of code and clues of how to do things is the NS User Groups as well as the not so good sample apps.
A lot of it is done with trial and error. I have found developing web services a little lest frustrating than the client and server side scripting.
B
Found some sample code + documentation here. I integrate netsuite with some kohana based site. I've thrown up two snippets that I use for easing development, a getNetsuiteConnection() method and a snippet used for getting a list of custom fields in a given record.
Update:
Found some more resources recently (mostly targeted at using NetSuite via the PHP framework).
NetSuite Global Scope Problem
Getting a List of Customers
NetSuite Tips & Tricks
Tips & Code Samples
08/12 Update: If you are working with ruby, checkout this gem which implements a portion of the NetSuite SOAP API.
A Quick Netsuite Scripting Tip
When working on SuiteScript, we have different field types and and form fields in NetSuite but to get values from these we have generic functions
nlapiGetFieldValue();
record.getFieldValue();
rec.getValue();
These functions always return values as type string. Even for Date and Numeric type of fields.
So when manipulating values returned one should(have to) convert them to right types to avoid bugs.
For example we may apply parseInt or parseFloat for Numeric data.
var val = nlapiGetFieldValue('fieldId');
if( 3 > parseInt(val))
Beware that ParseInt can return NaN so a more efficient way is to use these type of functions
function getNumber(number){
return (parseFloat(number) == NaN)?0.0:parseFloat(number);
}
For date type fields we may use standard Netsuite functions
nlapiStringToDate();
I can't stress enough what a great resource the user group is. I constantly get answers there, many by NetSuite employees, including the creator Evan. Subscribe to the various forums and ask questions. Be sure to mention what you are doing, what you have tried and any thoughts you have on the process you are attempting. I find that when I follow that formula I get answers. Others at my company will just ask how to do something and rarely get any help.
Be aware that many things are not either documented or are not supported in SuiteScript and/or Web Services and the supported list is not consistent between the two.
It is a bit of a nightmare. The help-center section is useful for reference.
https://system.netsuite.com/app/help/helpcenter.nl?topic=help
I second Corey in utilizing the NS user group (recently migrated to https://usergroup.netsuite.com/users/index.php? where I am waiting on approval). Also paying the premium for NS phone support has been helpful in resolving issues. Outside of NS provided support/resources, the linkedin NS user group is pretty decent. I don't find much use out of stackoverflow results for NetSuite problems, probably for the lack of understanding of the system.
NetSuite for Dummies is a good reference for NetSuite in the functional perspective, but offers very little to developers. For Devs, I'd suggest checking out the NS developers guide here https://system.netsuite.com/core/media/media.nl?id=5732122&c=NLCORP&h=5fca4bf5dd825a28ab41&_xt=.pdf&addrcountry=US (old but still relevant). The developers guide contains much of the same information as the help section (albeit the help section is more up to date, but does not have effective searching).

Tips for getting started with SQL? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Closed 1 year ago.
Locked. This question and its answers are locked because the question is off-topic but has historical significance. It is not currently accepting new answers or interactions.
I've never had much need for programming with databases. Since their use is so widespread it seems like a good thing for me to learn. SQL seems like the place to start, possibly SQLite and maybe the Python bindings. What would you recommend for someone new to this? Libraries, tools and project ideas are all welcome.
Structure Query Language (SQL) is the language used to talk to database management systems (DBMS). While it's a good thing to learn, it's probably best to do it with a project in mind that you'd like to do. It's funny you say you've never had a need, because I'm the opposite, almost every program I've ever written has used a database of some sort. The vast majority (mostly web-based) revolve around using a database.
Learn about relations and database architecture. This means how to structure your tables, make foreign keys and relations.
For example, you might have a movies database. In it, you store information about the Movies, Studios that released the movies, and the Actors in the movies. Each of these becomes a table. Each Movie is released by one Studio. Since you don't want to store duplicate the studio information (address, etc) in each Movie entry, you store a relation to it, so each Movie item contains a reference to a Studio item. This is called a one-to-many relationship (one studio has many movies). Likewise, you don't want to store Actor information for each Movie. But one Actor can be in many Movies, so this is stored as a many-to-many relationship.
Learn SQL itself. SQLCourse is a good place to get started, but there are many other books and resources. SQL is a standard, but each RDBMS has its own vendor-specific ways of doing certain things and other limitations (for example, some systems don't support sub-queries, there are several different syntaxes for limiting the number of rows returned, etc). It's important to learn the syntax for the one you're using (eg, don't learn Oracle syntax and then try and use it in MySQL) but they are similar enough that the concepts are the same.
Tools depend on the DBMS you use. MySQL is a pretty popular database, lots of tools are available, and lots of books. SQLite and Postgresql are also quite popular, and also free/open-source.
If you can, you really want to find someone who knows how to use it, and pick their brains. That's because there are a lot of important principles (eg 3rd normal form) which will are a lot easier to learn through discussion rather than from books.
If you want to teach yourself, you should learn the syntax for doing basic selects, joins, updates, deletes, and group by queries. You should also learn the "Swiss army knife" of selects, the CASE statement. Too many people don't. Many of the tutorials recommended in this thread will do that. Then you need to try to solve SQL problems. I'm sure that Joe Celko's SQL Puzzles and Answers is a good source of them, though it may be a little advanced.
This will let you actually write SQL. But you still need to learn how to organize a database. Which for most purposes means that you really need to learn what 3rd normal form looks like. You don't have to be able to give a formal definition of it, just recognize it when you see it, and know how to adjust something to be in that format.
Lots of references will explain it, but you won't know if you're reading them correctly. This is where it really, really helps to have access to someone who can look at a table layout and tell you, "That's right" vs "That's wrong, here's what needs to be changed." Failing all else, you could post a question here with a proposed layout. But a back and forth discussion with a live person would still be preferable IMO.
Try Wikipedia, http://www.w3schools.com/sql/default.asp and http://www.sql-tutorial.net/ Also check YouTube for SQL Videos.
You are correct, SQLite is a great place to start because it is free, lightweight, and available on many platforms. This is only a start though. SQLite is very liberal on SQL syntax and lacks an intneral programming language like DBMS systems have. Still, if you want to start and learn with minimal overhead, SQLite is the way to go.
SQLite is nice and they have really nice documentation, however you should be aware that it is not a full featured SQL database like MySQL, Postgres or the commercial variants. SQLite's API relies on callbacks which is a fine model, but not all database APIs work that way. If you are familiar with Perl, then DBI is another nice way to explore SQL.
/Allan
"A Gentle Introduction to SQL" - You can even practice "live queries" right on this tutorial website.
http://sqlzoo.net/
I always recommend The Practical SQL Handbook for a good starting point for beginners - especially those who have seen SQL but never understood how to build up a query them selves or how they work.
All Celko's books are great.
Hernandez's Mere Mortals book is good.
Ken Henderson's books are also excellent.
Reading up a bit on relational algebra is a good way to understand the underlying concepts of relational databases.
Jeo Clecko's SQL for smarties is excellent.
I recommend the exercises at this site: sql-ex.ru
You can even get a certificate if you do the right.
Start with Ideone and try queries on line just with a web browser.
If you program using the .NET framework, then learning LINQ might be a good place to start. The LINQ "engine" will handle the back end communication with the database (or objects, or entities, or XML, etc.) for you. If you want to dig deeper, you can explore the SQL generated by the LINQ that you write.
If you already know a thing or two about web applications, then that would be a good place to start. Nearly every serious webapp uses an SQL database as its backend.
The folks at Head First have come out with a book. Going by how good their other books are, I'd recommend this one. Haven't read it yet though. (LINK)
You may want to consider starting with MySQL as it is widely documented and very easy to get started with. You can download the Community Edition and then add the GUI Tools and you'll both GUI and command line interfaces.
Read a book to start learning about SQL. I read Beginning SQL Queries from Apress not long ago, and found it clear and logically written for a beginner (I reviewed it for a colleague).
I learnt 90% of what I know about SQL from here. In 1997.
I think it still stands up.
Hey although not complete it's great to get hands on with SQLite as mentioned above, Google 'Learn SQL the hard way' and there is an online book which you can work through which uses SQLite.
Google is great for downloading pdf's for free 'Cough Cough' but try http://www.sqlfiddle.com/
It's an online platform which is free! No log in required just go to their page, create your database in whichever language you want (That's the best bit I choose T-SQL as I'm learning that), and then you can query it as much as you like. I'm learning with a pdf file which has opensource SQL files you can download to follow along, and SQLFiddle has been great to learn vendor specific SQL.